Что такое команда sh?


33

Я не могу понять, что такое команда sh?

http://unixhelp.ed.ac.uk/CGI/man-cgi?sh

Это выполняет файл?

как в коте:

sh /usr/local/tomcat/bin/shutdown.sh

Извините, просто запутался.


1
@ Chopper3: теги не для выражения вашего мнения, комментарии.
ThatGraemeGuy

Ответы:


32

ш - раковина борна .

Существует несколько оболочек, из которых bourne является старым стандартом, установленным на всех системах Unix, и, как правило, тот, который вы можете гарантировать, будет существовать.

Оболочка - это интерпретатор команд, который принимает ваш ввод, возвращает его обратно на экран, в правильные файлы и т. Д. И предоставляет все основные встроенные команды, необходимые для управления заданиями, уничтожения, проверки выражений и т. Д.

Ваша команда выше говорит, что нужно запустить этот shell-скрипт, используя оболочку bourne. Разные оболочки используют разный синтаксис, поэтому использование правильной оболочки является обязательным требованием. В первой строке оболочки также должно быть указано, что использовать: #! / Bin / sh говорит use / bin / sh


3
На многих системах (например, в Mac OS X), в настоящее время shэто фактически bashоболочка Bourne-again. Команда sh --versionскажет еще один. Впрочем, он обратно совместим с оболочкой Bourne.
Арьян

6

ш - раковина борна. /usr/local/tomcat/bin/shutdown.shэто сценарий оболочки sh fileработает fileкак сценарий оболочки обычно нужно просто установить бит выполнения и запустить ./file.


Хорошо, так что я иду и неявно меняю свою оболочку для запуска этой команды, хорошо, спасибо.
user3183

Технически, вы бы изменили сценарий. Убедитесь , что первая строка: # / bin / Баш тогда: CHMOD + х /usr/local/tomcat/bin/shutdown.sh сделать его исполняемым!
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.