Вопросы с тегом «shell-script»

Вопросы о сценариях оболочки, исполняемых файлах, которые интерпретируются оболочкой (bash, zsh и т. Д.).

6
Trap, ERR и отображение строки ошибки
Я пытаюсь создать несколько отчетов об ошибках, используя Trap для вызова функции по всем ошибкам: Trap "_func" ERR Можно ли узнать, с какой линии был отправлен сигнал ERR? Оболочка Баш. Если я это сделаю, я смогу прочитать и сообщить, какая команда использовалась, и записать / выполнить некоторые действия. Или, может …

2
Как назначить вывод cat скрипта bash переменной в другом скрипте
У меня есть скрипт bash, который выдает вывод cat, когда он принимает аргумент. У меня также есть другой скрипт bash, который выполняет первый скрипт bash с аргументом, с помощью которого я хочу создать вывод cat Как мне сохранить выходные данные cat, созданные первым скриптом bash, в переменных?


5
Проверьте, находится ли $ REPLY в диапазоне чисел
Я пишу сценарий оболочки для Linux, используя Bash, для перевода любого видео-файла в MP4. Для этого я использую avconvс libvorbisаудио. Внутри моего скрипта у меня есть вопрос для пользователя: read -p "- Audio Quality [scale from -2 to 10] ? " if [ -n "$REPLY" ] ; then ABITRATE="-aq $REPLY" …

1
Могут ли случаи с bash каскадными?
Я пытаюсь сделать что-то вроде этого: case $level in 3) echo "Level Three" 2) echo "Level Two" 1) echo "Level one" ;; esac где, если $ level = 3, это вывело бы Level Three Level Two Level One в то время как если бы $ level = 1, он вывел …

8
Проверьте, существуют ли файлы, соответствующие шаблону, чтобы выполнить скрипт
Я пытаюсь написать ifзаявление, чтобы проверить, есть ли какие-либо файлы, соответствующие определенному шаблону. Если в каталоге есть текстовый файл, он должен запустить данный скрипт. Мой код в настоящее время: if [ -f /*.txt ]; then ./script fi Пожалуйста, дайте несколько идей; Я хочу запустить скрипт, только если .txtв каталоге есть.

4
Выравнивание вывода сценария оболочки Bash
Мой сценарий: date echo -e "${YELLOW}Network check${NC}\n\n" while read hostname do ping -c 1 "$hostname" > /dev/null 2>&1 && echo -e "Network $hostname : ${GREEN}Online${NC}" || echo -e "${GRAY}Network $hostname${NC} : ${RED}Offline${NC}" done < list.txt sleep 30 clear done Выводит ли информация следующим образом: Network 10.x.xx.xxx : Online Network 10.x.xx.xxx …

7
Портативный способ получить абсолютный путь скрипта?
Что такое переносимый способ для (zsh) сценария определить его абсолютный путь? В Linux я использую что-то вроде mypath=$(readlink -f $0) ... но это не портативно. (Например, readlinkДарвин не распознает -fфлаг и не имеет никакого эквивалента.) (Кроме того, использование readlinkдля этого, по общему признанию, довольно темного хака.) Какой способ более портативный?

4
Как сделать временный файл в оперативной памяти?
У меня есть скрипт, который будет передавать его вывод |tee scriptnameYYMMDD.txt. После каждого цикла цикла for, в котором генерируется вывод, я буду поменять содержимое файла tac scriptnameYYYYMMDD.txt > /var/www/html/logs/scriptname.txtтак, чтобы вывод журнала был виден в окне браузера с самыми новыми строками вверху. У меня будет несколько сценариев, делающих это параллельно. …

3
Использование sed для окраски вывода команды на солярисе
У меня есть скрипт ksh, который должен работать как на Linux, так и на Solaris. Я пытаюсь раскрасить вывод определенных команд. Он работает на Linux (в частности, RHEL6), но не на Solaris (SunOS 5.10). Команда на Linux (вывод «test» правильно окрашен красным): [amartin@linuxbox:~]$ echo "test" | sed 's,.*,\x1B[31m&\x1B[0m,' test Команда …

3
Что значит `{{(выход 1); выход 1; }; } `значит?
Я процитировал следующий фрагмент кода от config.statusсгенерированного configure. if test ! -f "$as_myself"; then { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} { (exit 1); exit 1; }; } fi Во фрагменте …

11
Почему оболочка автоматически не исправляет «бесполезное использование кошки»? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 8 месяцев назад . Многие люди используют oneliners и скрипты, содержащие код вдоль строк cat "$MYFILE" | command1 …

1
Где продолжение строки bash после && и || документально?
Я часто видел эту конструкцию в сценариях и использовал ее сам, но меня беспокоит, что я не могу найти ее в документации. Пример: [ -f file1 ] && [ -f file2 ] && echo "Both files exist." || echo "One or the other file doesn't exist." Это также можно сделать …

4
Область действия локальных переменных в функциях оболочки
После прочтения 24.2. Локальные переменные , я думал, что объявление переменной varс ключевым словом localозначало, что varзначение было доступно только внутри блока кода, ограниченного фигурными скобками функции. Однако после запуска следующего примера, я обнаружил, что varтакже может быть доступна, и считываться из функций , вызываемых этого блоком кода - то …

5
Почему мне нужно поместить «do» в той же строке, что и «for»?
1. Резюме Я не понимаю, зачем мне правило E010 bashate . 2. Детали Я использую Bashate для Linting .shфайлов. Правило E010: делать не на той же линии, что и для for bashate: Правильный: #!/bin/bash for f in bash/*.sh; do sashacommand "$f" done Ошибка: #!/bin/bash for f in bash/*.sh do sashacommand …

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