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

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

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

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

3
Какой интерпретатор оболочки запускает скрипт без шебанга?
Предположим, что оболочкой по умолчанию для моей учетной записи является zsh, но я открыл терминал, запустил bash и выполнил скрипт с именем prac002.sh, какой интерпретатор оболочки будет использоваться для выполнения сценария, zsh или bash? Рассмотрим следующий пример: papagolf@Sierra ~/My Files/My Programs/Learning/Shell % sudo cat /etc/passwd | grep papagolf [sudo] password …

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


6
Правильно ли использовать / bin / sh в hashbang, если оболочка Bourne недоступна в дистрибутиве?
Как правило, сценарии оболочки содержат следующий комментарий в первой строке файла сценария: #!/bin/sh. Согласно проведенным мною исследованиям это называется «хэш-бэнг», и это обычный комментарий. Этот комментарий сообщает Unix, что этот файл выполняется Bourne Shell в каталоге /bin. Мой вопрос начинается с этого момента. До сих пор я не видел этот …

2
Как работает этот шебанг, начинающийся с двойного дефиса (-)?
Я нашел следующий вид шебанга на странице RosettaCode: --() { :; }; exec db2 -txf "$0" Это работает для Db2, и аналогичная вещь для Postgres. Однако я не понимаю всей линии. Я знаю, что двойная черта - это комментарий в SQL, и после этого он вызывает исполняемый файл Db2 с …

3
Почему «ps ax» не находит работающий скрипт bash без «#!» заголовок?
Когда я запускаю этот скрипт, намеревался запускать, пока не убил # foo.sh while true; do sleep 1; done ... Я не могу найти его с помощью ps ax: >./foo.sh // In a separate shell: >ps ax | grep foo.sh 21110 pts/3 S+ 0:00 grep --color=auto foo.sh ... но если я …

6
Слишком много строк shebang (объявление скрипта) - есть ли способ уменьшить их количество?
У меня есть проект, состоящий из около 20 небольших .shфайлов. Я называю их «маленькими», потому что обычно ни один файл не содержит более 20 строк кода. Я выбрал модульный подход, потому что, таким образом, я верен философии Unix, и мне легче поддерживать проект. В начале каждого .shфайла я ставлю #!/bin/bash. …

3
Распространение скрипта: я должен использовать / bin / gawk или / usr / bin / gawk для shebang?
Gawk обычно находится в / bin или / usr / bin? Я бы пошел с, #!/usr/bin/env gawkно тогда я не могу использовать аргументы. Щас пользуюсь #!/bin/gawk -f. Скрипт очень длинный, содержит много одинарных кавычек и работает с stdin. В руководстве по GNU Awk есть раздел 1.1.4 Исполняемые программы awk, в …
12 awk  shebang  env 

1
Нет такого файла или каталога, но я вижу это!
Я пытаюсь запустить скрипт Python на Raspberry PI без головы, используя winSCP, и получаю следующее сообщение об ошибке: Command '"./areadetect_movie_21.py"' failed with return code 127 and error message /usr/bin/env: python : No such file or directory. Когда я пытаюсь запустить из терминала, я получаю: : No such file or directory. …

2
Почему #! / Usr / bin / env bash не работает в моей системе?
Я столкнулся с некоторыми проблемами при запуске некоторых сценариев установки, на которые они жаловались bad interpreter. Итак, я сделал тривиальный пример, но не могу понять, в чем проблема, см. Ниже. #!/usr/bin/env bash echo "hello" Выполнение сценария выше приводит к следующей ошибке [root@ech-10-24-130-154 dc-user]# ./junk.sh bash: ./junk.sh: /usr/bin/env: bad interpreter: No …

3
Почему «она взрыва» начинается с «#!»?
Почему "она взрыва" начинается с #!, как #!/bin/bash? Я всегда соглашался с тем, как это делается, но есть ли причина для этого? Зачем начинать с #; разве это обычно не комментарий? Или дело в комментариях?
10 shell  history  shebang 

1
линия Шебанга не работает с cr-lf
Почему части shebang следующих элементарных скриптов не работают: $ cat hello.sh #! /bin/sh echo Hello $ ./hello.sh bash: ./hello.sh: /bin/sh^M: bad interpreter: No such file or directory $ cat hello.py #! /usr/bin/env python3 print("Hello") $ ./hello.py : No such file or directory тогда как вызов интерпретатора вручную работает: $ sh …

2
Несколько Шебангов в одном файле Bash
У меня есть скрипт от другого человека, который имеет вид (примечание: это один файл): #!/bin/bash some commands some commands #!/bin/bash some commands some commands #!/bin/bash some commands some commands Мне интересно, какова цель второго и третьего Шебанга? Это по ошибке или нарочно?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.