Вопросы с тегом «shebang»

Используйте тег / shebang, если ваш вопрос касается строки «#!» В начале скрипта

460
Почему лучше использовать «#! / Usr / bin / env NAME» вместо «#! / Path / to / NAME» в качестве моего шебанга?

Я заметил, что некоторые сценарии, которые я приобрел у других, имеют шебанг, в #!/path/to/NAMEто время как другие (использующие тот же инструмент, NAME) имеют шебанг #!/usr/bin/env NAME. Кажется, что оба работают правильно. В руководствах (например, по Python), кажется, есть предположение, что...

84
Шебанг определяет оболочку, которая запускает скрипт?

Это может быть глупый вопрос, но я все же задаю его. Если бы я объявил Шебанг #!/bin/bash в начале my_shell_script.sh, так что я всегда должен вызывать этот скрипт с помощью Bash [my@comp]$bash my_shell_script.sh или я могу использовать, например, [my@comp]$sh my_shell_script.sh а мой скрипт...

60
Шебанг, начинающийся с `//`?

Я запутался в следующем скрипте ( hello.go). //usr/bin/env go run $0 $@ ; exit package main import "fmt" func main() { fmt.Printf("hello, world\n") } Это может выполнить. (на MacOS X 10.9.5) $ chmod +x hello.go $ ./hello.go hello, world Я не слышал о Шебанге, начиная с //. И это все еще работает,...

53
Есть ли какая-то причина, чтобы шебанг указывал на / bin / sh, а не на / bin / bash?

В большинстве сценариев оболочки, которые я видел (кроме тех, которые я сам не написал), я заметил, что shebang установлен в #!/bin/sh. Это не очень удивляет меня в старых скриптах, но есть и в довольно новых скриптах. Есть ли основания для предпочтения /bin/shболее /bin/bash, так как bashэто в...

36
Использовать расширение .sh или .bash для скриптов bash?

(См. Использование #! / Bin / sh или #! / Bin / bash для совместимости с Ubuntu-OSX и простоты использования и POSIX ) Если я хочу, чтобы в моих сценариях использовалась оболочка bash, действительно ли расширение .bash вызывает bash или это зависит от конфигурации системы / 1-й строки shebang. Если...

33
Несколько аргументов в Шебанге

Мне интересно, существует ли общий способ передачи нескольких опций в исполняемый файл через строку shebang ( #!). Я использую NixOS, и обычно первая часть шебанга в любом сценарии, который я пишу /usr/bin/env. Проблема, с которой я сталкиваюсь, состоит в том, что все, что приходит после,...

32
Что именно происходит, когда я запускаю файл в моей оболочке?

Итак, я подумал, что хорошо понимаю это, но просто провел тест (в ответ на разговор, в котором я с кем-то не согласен) и обнаружил, что мое понимание неверно ... Как можно более подробно, что именно происходит, когда я запускаю файл в моей оболочке? Что я имею в виду, если я ввожу : ./somefile some...

26
В знак после Шебанга?

В сценарии «support / apxs.in» проекта Apache httpd@ после текста появляется текст, окруженный знаками #!. То есть первая строка скрипта: #!@perlbin@ -w Это вещь Perl или ядро ​​UNIX? Другими словами, возможно ли выполнить этот скрипт, используя path/to/script/script_name.in? Если нет, то в чем...

25
Запустить скрипт на экране

Я хочу запустить скрипт bash на отдельном экране. Сценарий вызывает программу несколько раз, каждый из которых занимает слишком много времени для ожидания. Моей первой мыслью было просто открыть экран и затем вызвать скрипт, но оказалось, что я не могу отсоединиться (мимо ctrl-a d), пока скрипт...

25
Рекомендуется использовать zsh вместо скриптов bash? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 9 дней назад . Можно ли предположить, что достаточно людей zshустановили для запуска...

22
Почему нет шебанга в .bashrc / .bash_profile?

Простой вопрос: я только что понял, что никогда не видел шебанга поверх .bashrcскрипта, что наводит меня на мысль, что система использует оболочку по умолчанию для получения ее при входе в систему ( ${SHELL}). Я размышляю над причинами, почему это так, то есть считается ли это плохой привычкой...

17
Что аргументы '-v' и '-x' означают для bash?

Я видел пару сценариев оболочки со следующим shebang: #!/bin/bash -x -v Однако man bashне объясняется, к чему эти аргументы -xи -vотстаивают, если они вообще принадлежат bash. Так что же означают эти -xи -v(и другие возможные...

17
Почему поведение синтаксиса `#!` Не определено POSIX?

На странице языка команд оболочки спецификации POSIX: Если первая строка файла команд оболочки начинается с символов «#!», Результаты не указываются. Почему поведение #!не определено POSIX? Я нахожу странным, что что-то такое портативное и широко используемое будет иметь неопределенное...

17
Какой интерпретатор оболочки запускает скрипт без шебанга?

Предположим, что оболочкой по умолчанию для моей учетной записи является zsh, но я открыл терминал, запустил bash и выполнил скрипт с именем prac002.sh, какой интерпретатор оболочки будет использоваться для выполнения сценария, zsh или bash? Рассмотрим следующий пример: papagolf@Sierra ~/My...

16
Выберите интерпретатор после запуска скрипта, например, если / еще внутри hashbang

Есть ли способ динамически выбрать интерпретатор, который выполняет сценарий? У меня есть скрипт, который я запускаю на двух разных системах, и интерпретатор, который я хочу использовать, находится в разных местах на двух системах. В конечном итоге мне приходится менять строку hashbang каждый раз,...