Автор Тема: Вопрос про начало в скриптах  (Прочитано 3065 раз)

Оффлайн NK

  • Участник
  • *
  • Сообщений: 283
Извините, за нескромный вопрос , а можете все ж пояснить
я часто замечал, что скрипты часто начинаются так:
#!/bin/shи хочу поинтересоваться, данная строчка пишется из-за того, что так принято или все таки она что-то дает (как я понимаю, "#" - это ведь, в данном случае, комментарий, или нет, говоря это я продумываю , как бы вопрос не значил антиКоммент)?
« Последнее редактирование: 22.11.2008 16:42:56 от NK »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Вопрос про начало в скриптах
« Ответ #1 : 22.11.2008 07:57:42 »
Нет - в данном случае это не комментарий, а знак ядру, что данный скрипт должна обрабатывать команда /bin/sh. Без неё скрипт при определённых условиях может вообще не выполниться.

http://rus-linux.net/MyLDP/HOWTO-ru/Bash-Progr-Intro-HOWTO/Bash-Prog-Intro-HOWTO-2.html#ss2.1

Оффлайн NK

  • Участник
  • *
  • Сообщений: 283
Re: Вопрос про начало в скриптах
« Ответ #2 : 22.11.2008 16:51:06 »
Спасибо,
теперь буду знать
---
и вот теперь такой вопрос напрашивается) :
Если я не напишу в начале файла-скрипта,
#!/bin/shа просто сделаю его исполняемым, к примеру, такой командой:
chmod 775 файл-скриптМожет быть такое, что скрипт, в какой-то ситуации и с какими-то параметрами не исполнится?
« Последнее редактирование: 22.11.2008 16:52:47 от NK »

alunix

  • Гость
Re: Вопрос про начало в скриптах
« Ответ #3 : 22.11.2008 18:58:06 »
Это надо на конкретном примере рассматривать, в линуксе возможно все :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Вопрос про начало в скриптах
« Ответ #4 : 22.11.2008 19:18:03 »
Цитировать
Может быть такое, что скрипт, в какой-то ситуации и с какими-то параметрами не исполнится.
Может вообще не запуститься.

Оффлайн NK

  • Участник
  • *
  • Сообщений: 283
Re: Вопрос про начало в скриптах
« Ответ #5 : 23.11.2008 00:06:03 »
Спасибо за информацию , учтем

Оффлайн wRAR

  • Участник
  • *
  • Сообщений: 469
Re: Вопрос про начало в скриптах
« Ответ #6 : 23.11.2008 12:32:48 »
Спасибо,
теперь буду знать
---
и вот теперь такой вопрос напрашивается) :
Если я не напишу в начале файла-скрипта,
#!/bin/shа просто сделаю его исполняемым, к примеру, такой командой:
chmod 775 файл-скриптМожет быть такое, что скрипт, в какой-то ситуации и с какими-то параметрами не исполнится?
Даже если напишете, может.

Оффлайн NK

  • Участник
  • *
  • Сообщений: 283
Re: Вопрос про начало в скриптах
« Ответ #7 : 24.11.2008 00:09:29 »
Спасибо,

(я заглянул в каталог /bin и обнаружил у себя там 2 исполняемых файла: bash и sh , и после этого у меня возник соответствующий вопрос)
как я замечал в скриптах в начале обычно идут 2 варианта первых строк
или
#!/bin/bash или
#!/bin/shтак вот, подскажите, пожалуйста, на что смотреть и что писать надо (предпочтительнее) в начале скрипта?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Вопрос про начало в скриптах
« Ответ #8 : 24.11.2008 01:15:27 »
Если в скриптах нет команд, свойственных только bash, то /bin/sh. Но возможных вариантов гораздо больше, чем 2 от /bin/ash до /bin/perl

Оффлайн NK

  • Участник
  • *
  • Сообщений: 283
Re: Вопрос про начало в скриптах
« Ответ #9 : 24.11.2008 01:22:43 »
Извините, может за глупый вопрос, а как-нибудь можно узнать, какие команды свойственны bash, а какие sh ?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....
Re: Вопрос про начало в скриптах
« Ответ #10 : 24.11.2008 01:31:39 »
Читать про bash и sh в учебниках.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....