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

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

4
Как POSIX-ли подсчитать количество строк в строковой переменной?
Я знаю, что могу сделать это в Bash: wc -l <<< "${string_variable}" В основном все, что я нашел, связано с <<<оператором Bash. Но в оболочке POSIX <<<она не определена, и я часами не мог найти альтернативный подход. Я совершенно уверен, что есть простое решение, но, к сожалению, я не нашел …

2
Есть ли альтернативы команде `find` в Linux для SunOS?
Команда findв Linux имеет много опций по сравнению с findкомандой в SunOS или Solaris. Я хочу использовать findкоманду следующим образом: find data/ -type f -name "temp*" -printf "%TY-%Tm-%Td %f\n" | sort -r Он отлично работает на Linux-машине, но та же команда не имеет опции -printfна SunOS-машине. Я хочу настроить вывод …

3
Выполнять команду каждые X секунд
Я хочу выполнять команду каждые 10 секунд, и выполняется ли она в фоновом режиме (тем самым исключая watch?). Все ответы показывают что-то вроде следующего, но это будет выполняться каждые 11-14 секунд. Как это можно сделать? while true; do # perform command that takes between 1 and 4 seconds sleep 10 …

6
Можно ли заменить «тогда» скобками?
Я впервые узнал, как кодировать на Cязыке, и с помощью if ( code ) then code fi Мне очень трудно читать мой код (не спрашивайте почему). Есть ли замена then? Что-то вроде этого: if ( code ) { code } fi

1
Подстановка Bash с переменной, определенной из шаблона glob
Приведенный ниже пример объясняет проблему. Почему FILENAMEпри использовании подстановки отпечаток корректно отображается и воспринимается как шаблон? #!/bin/bash FILEPATH_WITH_GLOB="/home/user/file_*" FILENAME=$(basename "$FILEPATH_WITH_GLOB") echo $FILENAME #file_1234 echo ${FILENAME:1:5} #ile_* <---why is this not ile_1

2
Переместить файл, но только если он закрыт
Я хочу переместить большой файл, созданный внешним процессом, как только он будет закрыт. Является ли эта тестовая команда правильной? if lsof "/file/name" then # file is open, don't touch it! else if [ 1 -eq $? ] then # file is closed mv /file/name /other/file/name else # lsof failed for …

6
Как извлечь пару ключ-значение из команды ps
Я пытаюсь извлечь имя приложения из psкоманды, как это: ps -af -u sas |grep "java"| grep -v "grep" и это производит следующее: sas 24431 1 0 Oct10 ? 00:51:08 /usr/lib/jvm/java-1.7.0-oracle-1.7.0.25.x86_64/jre/bin/java -Denv=DEV -Dapp.name=myApp -Xms512m -Xmx1g -Dlog.dir=/apps/java/logs Я пытался использовать, egrepно, похоже, не работает: ps -af -u sas|grep "java"| grep -v "grep"| …

2
Использование grep в операторе if-else [закрыто]
Закрыто . Этот вопрос нуждается в деталях или ясности . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Добавьте детали и проясните проблему, отредактировав этот пост . Закрыто 5 лет назад . Почему мой код не выводится, если введенная строка отсутствует в файле. Когда я ввожу строку, …

4
Проверьте, активен ли порт telnet в сценарии оболочки
Я пытаюсь создать скрипт для проверки возможности входа через telnet. Я не хочу, чтобы действительно войти в систему; следовательно, ожидать не нужно. Я просто хочу посмотреть, смогу ли я получить приглашение для входа в систему. Это делается из системы Linux, поэтому я пытался использовать nc: nc 192.168.10.5 23 -w 1 …

6
Скрипт для SSH и запуска команды не работает
Ниже приведен сценарий. Я хотел войти на несколько серверов и проверить версию ядра. #!/bin/bash #input server names line by line in server.txt cat server.txt | while read line do sshpass -p password ssh root@$line << EOF hostname uname -r EOF done Я ожидаю, что выходной, который идет как .. server1_hostname …
10 bash  shell-script  ssh 

5
Удалить пробелы, дефисы и подчеркивания в именах файлов?
Что такое хорошая команда для удаления пробелов, дефисов и подчеркиваний из всех файлов в каталоге или выбранных файлов? Я использую следующую команду с Thunar Custom Actions, чтобы убрать имена файлов: for file in %N; do mv "$file" "$(echo "$file" | tr -s ' ' | tr ' A-Z' '-a-z' | …

1
Использование getopts для разбора опций после аргумента без опций
У меня есть скрипт bash, как показано ниже в файле nepleaks_upd.sh, который я хочу запустить как ./nepleaks_upd.sh bootstrap --branch off. Не могу заставить его взять --branch, но то, что он работает, это ./nepleaks_upd.sh bootstrap -b off. usage() { echo "Usage: $0 [prepare | up | down] [-b <on/off>]" 1>&2; exit …

1
Использование inotify для мониторинга каталога, но не работает на 100%
Я написал скрипт bash для мониторинга определенного каталога /root/secondfolder/: #!/bin/sh while inotifywait -mr -e close_write "/root/secondfolder/" do echo "close_write" done Когда я создаю файл с именем fourth.txtin /root/secondfolder/и записываю в него содержимое, сохраняю и закрываю его, он выдает следующее: /root/secondfolder/ CLOSE_WRITE,CLOSE fourth.txt Однако, это не повторяет "close_write". Это почему?

3
Использование сценария оболочки в качестве виртуального принтера
У меня есть сценарий оболочки, который принимает файл PDF в качестве аргумента и распечатывает его с дополнительными параметрами принтера. Как я могу добавить этот скрипт в качестве виртуального принтера, который можно выбрать из графического интерфейса? Сценарий оболочки представляет собой ручной дуплексный сценарий, который принимает файл PDF, печатает четные страницы, выдает …

2
Отправить копию вывода скрипта в файл
Скажем, у меня есть сценарий Zsh, и я хотел бы, чтобы он выводил выходные данные STDOUT, а также копировал (выводил) свои выходные данные в файл на диске. Более того, скрипт начинается со следующей опции set -o xtrace что заставляет его быть многословным и печатать, какие команды он выполняет. Я хотел …

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