Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Как заставить работать "./" как "sh" ?  (Прочитано 858 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн gotozero

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Есть у меня програмка и она выдает команду ./filename.sh , но Ubuntu этого не понимает.
Вопрос: можно ли как нибудь заставить работать "./" как "sh"
Как быть?


______________
9.04 gnome

Оффлайн xrayman

  • Участник
  • *
  • Сообщений: 153
  • Ubuntu 10.04
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #1 : 02 Июля 2009, 18:14:47 »
а права на исполнение у filename.sh есть?

Оффлайн gotozero

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #2 : 02 Июля 2009, 18:20:59 »
да, 100%.
Вообщем-то я владелец.
Да и при запуске от рута не работает.

то есть вот так: sh filename.sh - работает
а так: ./filename.sh - не работает (command not found)


в редхате "./" аналог "sh"

Оффлайн Protopopulus

  • Старожил
  • *
  • Сообщений: 1695
  • А чего вы так смотрите?..
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #3 : 02 Июля 2009, 18:30:34 »
А права на ИСПОЛНЕНИЕ есть? ПКМ - Свойства - Права - Позволять выполнение файла как программы - Установить флаг.
Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus

Оффлайн gotozero

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #4 : 02 Июля 2009, 18:33:30 »
А права на ИСПОЛНЕНИЕ есть? ПКМ - Свойства - Права - Позволять выполнение файла как программы - Установить флаг.

большое спасибо тебе добрый человек!

Оффлайн aliftin

  • Старожил
  • *
  • Сообщений: 1398
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #5 : 02 Июля 2009, 19:52:57 »
Можно это делать и через консоль:

chmod +x ./file.sh
Если мы не можем до чего то дотянуться, мы виним в этом не свой рост, не отсутствие табуретки, а свою цель.

Оффлайн Protopopulus

  • Старожил
  • *
  • Сообщений: 1695
  • А чего вы так смотрите?..
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #6 : 02 Июля 2009, 20:01:49 »
Можно это делать и через консоль:

chmod +x ./file.sh
Можно еще более извращенно: chmod 755 ./file.sh  :)
Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus

Оффлайн SkeL2007

  • Участник
  • *
  • Сообщений: 204
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #7 : 02 Июля 2009, 21:51:31 »
Поржал, вообще-то))
Цитировать
Вопрос: можно ли как нибудь заставить работать "./" как "sh"
Цитировать
в редхате "./" аналог "sh"

Автору совет - почитать, что такое ./
Объясню - это не команда, а краткая запись пути текущей директории. Точно так же, ../ - родительская директория.
Зачему нужно? Чтобы было понятно, какую команду ты вызываешь (если это исполняемый файл) - без ./ название команды будет искаться только в определенных директориях.
Ну, про права на запуск тебе уже сказали.

Оффлайн Jython

  • Участник
  • *
  • Сообщений: 173
  • Ubuntu 9.04 - user
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #8 : 03 Июля 2009, 00:14:06 »
Есть у меня програмка и она выдает команду ./filename.sh , но Ubuntu этого не понимает.
Вопрос: можно ли как нибудь заставить работать "./" как "sh"
Как быть?


______________
9.04 gnome

Дай файлу права на исполнение chmod +x filename.sh
Затем запускай его. Запускать можно будет либо двойным кликом, либо командой ./filename.sh

Оффлайн dmay

  • Старожил
  • *
  • Сообщений: 1084
  • man google, кому сказал!
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #9 : 03 Июля 2009, 00:22:51 »
в редхате "./" аналог "sh"
вмемориз
я теперь всем это буду рассказывать, ссылаясь на топикстартера ^^
Ты попал в мою коллекцию криворуких тупых нубов!

Оффлайн gotozero

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #10 : 03 Июля 2009, 10:52:27 »
Посетбались ))
Но зато помогли.
Спасибо )))

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
Re: Как заставить работать "./" как "sh" ?
« Ответ #11 : 03 Июля 2009, 11:31:47 »
Поржал, вообще-то))
Цитировать
Вопрос: можно ли как нибудь заставить работать "./" как "sh"
Цитировать
в редхате "./" аналог "sh"

Автору совет - почитать, что такое ./
Объясню - это не команда, а краткая запись пути текущей директории. Точно так же, ../ - родительская директория.
Зачему нужно? Чтобы было понятно, какую команду ты вызываешь (если это исполняемый файл) - без ./ название команды будет искаться только в определенных директориях.
Ну, про права на запуск тебе уже сказали.
Да уж, забавно.
Дополню.
В файле в первой строке должно быть
#!/bin/bashПоиск по ключевым словам shebang или hash-bang даст подробности.
Если кратко, при выполнении команды ./имяфайла shell считает эту строку путем к интерпретатору, которому надо отдать этот файл в виде
/bin/bash ./имяфайлаДругие варианты строки
#!/usr/bin/python
#!/usr/bin/perl
#!/usr/bin/perl -w
#!/usr/bin/awk
#!/bin/sh
#!env perl

Можно пиcать свое.
« Последнее редактирование: 03 Июля 2009, 11:34:09 от wl »
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

 

Страница сгенерирована за 0.246 секунд. Запросов: 20.