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


3
Является ли $ () подоболочкой?
Я понимаю, что синтаксис подоболочки (<commands...>)- это $()всего лишь подоболочка, из которой можно извлечь значения переменных? Примечание: это относится к bash 4.4 на основании различных формулировок в их документации.
51 bash  subshell  syntax 

4
Являются ли оператор if else логическим и && или || и где я должен предпочесть один другому?
Я узнаю о структурах принятия решений, и я столкнулся с этими кодами: if [ -f ./myfile ] then cat ./myfile else cat /home/user/myfile fi [ -f ./myfile ] && cat ./myfile || cat /home/user/myfile Они оба ведут себя одинаково. Есть ли какие-то преимущества в использовании одного способа из другого?


1
Имена функций сценария Bash, содержащие двойное двоеточие '::'
Сегодня я натолкнулся на скрипт Bash, в котором есть имена функций с двойными двоеточиями ::, например, file::write()и file::read(). Я никогда раньше не видел этот синтаксис в скрипте Bash, и когда я вызывал скрипт, он работал нормально (к моему удивлению). После просмотра справочной страницы Bash в моей системе (и в сети) …

2
Как передать параметры функции в скрипте bash?
Я хотел бы написать функцию, которую я могу вызвать из скрипта с множеством различных переменных. По некоторым причинам у меня много проблем с этим. Примеры, которые я читал, всегда используют глобальную переменную, но это не сделает мой код более читабельным, насколько я могу видеть. Пример использования по назначению: #!/bin/bash #myscript.sh …

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

1
Почему нельзя изменить порядок оператора перенаправления ввода для циклов while?
В Bash вы можете переместить операторы перенаправления ввода в начало команды: cat <<< "hello" # equivalent to <<< "hello" cat Почему вы не можете сделать то же самое для цикла while? while read -r line; do echo "$line"; done <<< "hello" # hello <<< "hello" while read -r line; do …

2
Зачем группе команд скобки нужны пробелы после открывающей скобки в POSIX Shell Grammar?
TL; DR : Почему группе скобок POSIX нужны пробелы после {зарезервированного слова, а в подоболочке нет после зарезервированного слова (? Грамматика оболочки POSIX определяет группу скобок и подоболочку следующим образом brace_group : Lbrace compound_list Rbrace subshell : '(' compound_list ')' Теперь, если мы читаем это буквально, пробелы важны. Это будет …
10 shell  posix  subshell  syntax 

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