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

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

5
Stateful функция Bash
Я хотел бы реализовать функцию в Bash, которая увеличивает (и возвращает) счетчик при каждом вызове. К сожалению, это кажется нетривиальным, так как я вызываю функцию внутри подоболочки и, следовательно, она не может изменять переменные родительской оболочки. Вот моя попытка: PS_COUNT=0 ps_count_inc() { let PS_COUNT=PS_COUNT+1 echo $PS_COUNT } ps_count_reset() { let …

4
Bash: интерактивная удаленная подсказка
У меня есть скрипт, который подключается к удаленному серверу и проверяет, установлен ли какой-либо пакет: ssh root@server 'bash -s' < myscript.sh myscript.sh: OUT=`rpm -qa | grep ntpdate` if [ "$OUT" != "" ] ; then echo "ntpdate already installed" else yum install $1 fi Этот пример может быть упрощен. Вот …
16 bash  shell-script  ssh  stdin  read 

3
Завершение работы сценария bash в фоновом режиме
Я часто использую bashсценарии оболочки для запуска простых команд для множества разных файлов. Например, предположим , что у меня есть следующий bashскрипт, названный script.sh, который запускает команду / программы fooв трех текстовых файлов "a.txt", "b.txt", "c.txt": #!/bin/bash for strname in "a" "b" "c" do foo $strname".txt" done Также предположим, что …

2
Являются ли сценарии dash, ash и sh совместимыми на 100%?
Я хотел знать, совместимы ли скрипты, написанные для dash, ash и sh, на 100%? Существуют ли какие-либо дополнительные функции для разбивки, изменения или синтаксиса? Из того, что я слышал, ясень является прямым потомком sh.

4
Прочно строим дорожки
Скажем, у меня есть несколько переменных в сценарии оболочки (например, в zsh): FOLDER_1, FOLDER_2, etc. Эти переменные относятся к папкам по убыванию /. Например, если у меня есть путь/home/me/stuff/items переменные будут: FOLDER_1='home' FOLDER_2='me' FOLDER_3='stuff' Теперь скажите, что я хочу построить соответствующий путь путем объединения переменных. Один из возможных способов - …

3
Как я могу объединить переменную оболочки с другими параметрами в моих командных строках?
Как я могу объединить переменную оболочки с другими параметрами в моих командных строках? Например, #!/bin/sh WEBSITE="danydiop" /usr/bin/mysqldump --opt -u root --ppassword $WEBSITE > $WEBSITE.sql Мне нужно СЦЕПИТЬ .sqlк$WEBSITE

2
Какую команду idempotent я могу использовать для создания символической ссылки, указывающей на каталог?
Я хочу поместить команду в сценарий оболочки, который создаст символическую ссылку на каталог, но этот сценарий можно запускать снова и снова, поэтому при последующих вызовах команда не должна ничего менять. Вот структура каталогов: % tree /tmp/test_symlink /tmp/test_symlink ├── foo └── repo └── resources └── snippets ├── php.snippets ├── sh.snippets ├── …

1
Может ли интерактивная оболочка стать неинтерактивной или наоборот?
Может ли интерактивная оболочка стать неинтерактивной или наоборот? Примечание. Я провел много исследований по основному вопросу: «В чем разница между интерактивным и неинтерактивным?», И результаты моего исследования заставили меня задать этот вопрос. Этот вопрос имеет длинную преамбулу отчасти потому, что важно, какой тип определения мы используем для «интерактивного», чтобы ответить …


1
подождите, пока bash-buildin сожжет процессор на 100 процентов
По крайней мере, в GNU bash версии 4.3.42 x86_64 && GNU bash версии 4.3.11 x86_64 Я использую sleep & wait $!вместо простого sleepдля получения прерываемого sleepсигнала (как SIGUSR1 ). Но кажется, что waitbash-buildin ведет себя странным образом, когда вы запускаете следующее. Терминал 1: cat <( trap 'echo SIGUSR1' SIGUSR1; echo …


3
ошибка bash-скрипта stty: стандартный ввод: неподходящий ioctl для устройства
Я использую здесь документы в скрипте bash для автоматизации установки и настройки, где пароль требуется много раз. Я ввожу пароль один раз, и скрипт передает его различным командам. В большинстве случаев подход здесь-документа справляется с этим штрафом. Однако в одном случае я получаю эту ошибку: Enter VNC password: stty: standard …

1
Выполнение скрипта в zsh - права доступа к файлу
Я не уверен, что права доступа к исполняемому файлу не соответствуют ожиданиям Вероятно, потому что мои ожидания неверны. Тем не мение: У меня есть файл сценария, для простоты просто называется s, расположенный в ~/bin. Ради этого примера файл содержит только следующие строки: #!/bin/zsh echo "Test"; Очень просто. Я перехожу к …

4
Обработка bash переменной с помощью sed
переменная bash LATLNG содержит значение широты и долготы в скобках, например (53.3096,-6.28396) Я хочу разобрать их в переменные с именами LAT и LON, которые я пытаюсь сделать с помощью sed, так LAT=$(sed "s/(\(.*\),\(.*\))/\1/g" "$LATLNG") LON=$(sed "s/(\(.*\),\(.*\))/\2/g" "$LATLNG") Однако я получаю следующую ошибку: sed: can't read (53.3096,-6.28396): No such file or …

4
Зацикливание переменных
Я пишу bash-скрипт для использования rsync и обновления файлов примерно на 20 разных серверах. Я разобрался с частью Rsync. У меня проблемы с просмотром списка переменных. Мой сценарий до сих пор выглядит так: #!/bin/bash SERVER1="192.xxx.xxx.2" SERVER2="192.xxx.xxx.3" SERVER3="192.xxx.xxx.4" SERVER4="192.xxx.xxx.5" SERVER5="192.xxx.xxx.6" SERVER6="192.xxx.xxx.7" for ((i=1; i<7; i++)) do echo [Server IP Address] done …

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