Запитання з тегом «shebang»

Використовуйте тег / shebang, якщо ваше запитання стосується рядка "#!" На початку сценарію

3
Чому поведінка синтаксису `#!` Не визначена POSIX?
На сторінці мови командної оболонки специфікації POSIX: Якщо перший рядок файлу команд оболонки починається з символів "#!", Результати не визначені. Чому поведінка #!не визначена POSIX? Мені здається, що бентежить, що щось настільки портативне та широко застосовуване може мати не визначену поведінку.
17 shell  posix  shebang 

2
Що означають аргументи '-v' та '-x', щоб башти?
Я бачив пару сценаріїв оболонок із наступним шебангом: #!/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
Виберіть інтерпретатора після запуску сценарію, наприклад, якщо / else всередині hashbang
Чи є спосіб динамічного вибору інтерпретатора, який виконує сценарій? У мене є сценарій, що я працюю на двох різних системах, і інтерпретатор, який я хочу використовувати, розташований у різних місцях на двох системах. Що мені доводиться робити - це змінювати лінію хешбангу кожен раз, коли я переключаюсь. Я хотів би …

6
Чи правильно використовувати / bin / sh в хешбангу, якщо оболонка Bourne недоступна в дистрибутиві?
Як правило, сценарії оболонки містять наступний коментар в першому рядку файлу сценарію: #!/bin/sh. Відповідно до проведених нами досліджень, це називається "хеш-баг", і це умовний коментар. Цей коментар повідомляє Unix, що цей файл виконується штурмом Bourne під каталогом /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 Виконані програми …
12 awk  shebang  env 

1
Такого файлу чи каталогу немає, але я його бачу!
Я намагаюся запустити скрипт python на безголовому PI Raspberry, використовуючи 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 such …

3
Чому "вона-удар" починається з "#!"?
Чому "чумка" починається з #!, як #!/bin/bash? Я завжди приймав, що так це робиться, але чи є причина в цьому? З чого починати #; це зазвичай не коментар? Або справа в тому, що це слід коментувати?
10 shell  history  shebang 

1
лінія shebang не працює з 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 …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.