Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Sh в FreeB


Автор: Папараццы 3.12.2007, 11:56
Собственно в этом и вопрос ? Как сделать чтобы приложение без sh запускалось ?  Версия: FreeBSD 6.1

Автор: bilbobagginz 3.12.2007, 12:34
можете на примере пояснить что вы имеете в виду ?

Автор: Папараццы 3.12.2007, 13:06
например вместо apachectl start  я пишу sh apashectl start иначе не работает

Автор: ZeeLax 3.12.2007, 13:30
Цитата(Папараццы @  3.12.2007,  16:06 Найти цитируемый пост)
например вместо apachectl start  я пишу sh apashectl start иначе не работает 

Товарищи, объясните мне, неразумному, "не работает" - это что, новый код ошибки, или её описание?

Автор: Папараццы 3.12.2007, 13:43
Ну пишет что нет такой команды  если без sh запускаю 

Автор: JackYF 3.12.2007, 16:54
Папараццы, а какой у тебя командный интерпретатор?

Автор: Папараццы 3.12.2007, 17:01
Простой Терминал FreeBSD Gnome.

Автор: bilbobagginz 3.12.2007, 17:08
Цитата(Папараццы @  3.12.2007,  17:01 Найти цитируемый пост)
Простой Терминал FreeBSD Gnome. 

такого интерпретора команд не существует.
терминал - это среда, в которой можно запускать разные штучки.
например шелл. какой у вас login shell ?
Цитата

Ну пишет что нет такой команды  если без sh запускаю  

это обычно значит что команды нет в пути запуска ( переменная PATH )
если вы заходите в каталог, в котором данные скрипты лежат, и набираете:
Код

./apachectl restart

он тоже не находит команду "apachectl" ?

и еще: когда он пишет "нет такой команды", он пишет какой команды нет.
что там он пишет ?

Автор: ZeeLax 3.12.2007, 17:26
Цитата(Папараццы @  3.12.2007,  16:43 Найти цитируемый пост)
Ну пишет что нет такой команды  если без sh запускаю  

Вместо подобных отписок лучше привести выполняемую команду и сообщение об ошибке целиком. Комментарии конечно приветствуются. Делается это потому, что уровень ваших знаний вопроса не позволяет вам правильно интерпретировать ответ или же необходимую его часть (имелось ввиду, определить, какую именно часть ответа на команду необходимо нам написать).

Автор: MAKCim 3.12.2007, 18:42
Цитата(Папараццы @  3.12.2007,  13:06 Найти цитируемый пост)
например вместо apachectl start  я пишу sh apashectl start иначе не работает 

а вначале apachectl не пробовали написать
Код

#!/bin/sh

Автор: JackYF 3.12.2007, 18:57
Цитата(MAKCim @  3.12.2007,  18:42 Найти цитируемый пост)
а вначале apachectl

разве это не стандартный скрипт?

Автор: MAKCim 3.12.2007, 22:17
Цитата(JackYF @  3.12.2007,  18:57 Найти цитируемый пост)
разве это не стандартный скрипт? 

не знаю  smile 

Автор: Папараццы 4.12.2007, 00:53
Ну ./apachectl start или sh apacevtl start оба варианта работают. Но почему без него не работает ?  У меня на Линуксе без всяких sh работал. 
2ZeeLax - Ну уж извините если бы я был знатоком то явно не спрашивал бы. Просто интересно почему именно так работает. 
 

Автор: JackYF 4.12.2007, 02:12
Цитата(Папараццы @  4.12.2007,  00:53 Найти цитируемый пост)
./apachectl start

Если ты пишешь просто, без "sh" или "./", то интерпретатор не ищет бинарник в текущей папке, а ищет в PATH.

Автор: nickless 4.12.2007, 02:14
Цитата(Папараццы @  3.12.2007,  22:53 Найти цитируемый пост)
Ну ./apachectl start или sh apacevtl start оба варианта работают. Но почему без него не работает ?

Что-то подсказывает мне, что у вас нет . (директории где мы находимся в данный момент) в PATH. smile 
Покажите вывод 
Код

echo $PATH

Если написать где-нибудь в конфигурационном файле вашего шелла, название которого мы так и не узнали (echo $SHELL) что-то вроде
Код

PATH="$PATH:."

и засорсить его, может будет работать. smile 

Автор: ZeeLax 4.12.2007, 04:05
Папараццы, не извиню - вы уже пятый пост не можете написать, что оно вам отвечает. Покажите четко, что отвечает, на приведенные выше варианты команда. Не забудьте указать, в какой вы при этом находитесь директории - вам (нам) поможет вывод команды pwd в листинге. Было бы неплохо, если бы вы попробовали это в разных директориях.

Автор: Папараццы 4.12.2007, 16:23
echo $SHELL вывод - /bin/csh

Автор: Imple 4.12.2007, 16:28
Папараццы, использование csh чем то обусловленно? Если нет, попробуйте переехать на bash.

Автор: Папараццы 4.12.2007, 16:42
У меня по умолчанию он такой. Как сменить его? 
Вивожу ответы команд 
Код

echo $PATH 
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/root/bin: Command not found
pwd 
/root
echo $SHELL
/bin/csh

Автор: ZeeLax 4.12.2007, 17:08
Папараццы, вывод сообщения об ошибке при запуске
Код

apachectl start

мы не увидим никогда? Давайте его уже вывод
Код

pwd
./apachectl start
apchectl start
cd каталог/со/скриптами
./apachectl start

сюда.

Добавлено @ 17:09
P.S. Также у вас какая-то фигня написана в PATH. Сами правили его?

Автор: nickless 4.12.2007, 19:38
Цитата(Папараццы @  4.12.2007,  14:42 Найти цитируемый пост)
Как сменить его?

chsh

Автор: Папараццы 5.12.2007, 01:45
apachect start выдает command not found

Автор: ZeeLax 5.12.2007, 04:39
Цитата(Папараццы @  5.12.2007,  04:45 Найти цитируемый пост)
apachect start 

А если apachectl ?

Прямо с консоли можете скопировать несколько строк, как они есть?

Автор: Папараццы 5.12.2007, 13:15
Ну апечатка получилась. В данный момент открываю ./apachectl start  - ом.

Автор: JackYF 5.12.2007, 17:22
Цитата(ZeeLax @  5.12.2007,  04:39 Найти цитируемый пост)
Прямо с консоли можете скопировать несколько строк, как они есть?

+много.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)