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

16
Может ли интерактивная оболочка стать неинтерактивной или наоборот?

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

16
Какую команду idempotent я могу использовать для создания символической ссылки, указывающей на каталог?

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

16
Выберите интерпретатор после запуска скрипта, например, если / еще внутри hashbang

Есть ли способ динамически выбрать интерпретатор, который выполняет сценарий? У меня есть скрипт, который я запускаю на двух разных системах, и интерпретатор, который я хочу использовать, находится в разных местах на двух системах. В конечном итоге мне приходится менять строку hashbang каждый раз,...

16
Как я могу перечислить все имена пользователей и / или домашние каталоги?

Я хочу перечислить все каталоги пользователей на машине. Обычно я буду делать: ls -l /home Но я использую его в сценарии, который будет развернут на других машинах, и, возможно, на тех машинах они не называют его домашним (например, myHome). Поэтому я хочу обобщить это ls -l ~. Но он просто...

16
Прослушайте выход процесса из данного pid $$

Скажи, что у меня в руке пид, mypid=$$ Есть ли какая-нибудь команда bash / system, которую я могу использовать для прослушивания выхода этого процесса с данным pid? Если не существует никакого процесса с mypid, я думаю, что команда должна просто потерпеть...

16
Зацикливание переменных

Я пишу bash-скрипт для использования rsync и обновления файлов примерно на 20 разных серверах. Я разобрался с частью Rsync. У меня проблемы с просмотром списка переменных. Мой сценарий до сих пор выглядит так: #!/bin/bash SERVER1="192.xxx.xxx.2" SERVER2="192.xxx.xxx.3" SERVER3="192.xxx.xxx.4"...

15
хлыст или диалог

Я собираюсь создать скрипт, который будет использовать пользовательский ввод, поэтому я решил использовать whiptail, но немного путаю тот, который является переносимым и будет работать в Ubuntu 10.x и выше и CentOs5.x и выше. Я знаю read, но мне нужен инструмент, похожий на диалог, поэтому, если...

15
Когда использовать перенаправление на stderr в сценариях оболочки

Я знаю, что хорошо работающие утилиты, такие как grep, выводят «нормальные» сообщения в stdout и сообщения об ошибках в stderr. $ grep '^foo' file1 file2 file1:foo grep: file2: No such file or directory Когда я пишу сценарии оболочки самостоятельно, мне часто бывает трудно решить, какой вывод и...

15
Как заставить bash прервать выполнение скрипта при синтаксической ошибке?

Чтобы быть в безопасности, я бы хотел, чтобы bash прервал выполнение скрипта, если он обнаружит синтаксическую ошибку. К моему удивлению, я не могу этого достичь. ( set -eнедостаточно). Пример: #!/bin/bash # Do exit on any error: set -e readonly a=(1 2) # A syntax error is here: if (( "${a[#]}" ==...

15
Shell Script - синтаксическая ошибка рядом с неожиданным токеном else

С помощью следующего сценария оболочки, почему я получаю ошибки syntax error near unexpected token `else' Shell Script echo "please enter username" read user_name echo "please enter password" read -s pass echo ${ORACLE_SID} SID=${ORACLE_SID} if ["${ORACLE_SID}" != 'Test'] then sqlplus -s -l...

15
Объединение строковой переменной внутри цикла for в оболочке bash [закрыто]

Закрыто . Этот вопрос нуждается в деталях или ясности . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Добавьте детали и проясните проблему, отредактировав этот пост . Закрыто 6 лет назад . #!/bin/bash names= find /home/devuser -name 'BI*' echo $names for name in {names[@]}...

15
Как разобрать даты ISO8601 с помощью команды linux date

Я пытаюсь использовать команду даты для создания временной метки файла, которую сама команда даты может интерпретировать. Однако команде date, похоже, не нравится ее собственный вывод, и я не уверен, как обойти это. Дело в точке: sh-4.2$ date Fri Jan 3 14:22:19 PST 2014 sh-4.2$ date +%Y%m%dT%H%M...

15
Подсчет файлов в каталоге по расширению

В целях тестирования я хотел бы подсчитать, сколько файлов изображений находится в каталоге, отделяя каждый тип файла изображения по расширению (jpg = "yes". Это потому, что позже это будет полезно для другого сценария, который будет выполнять действие на каждое расширение файла). Могу ли я...

15
Запустите фоновый процесс из скрипта и управляйте им, когда скрипт закончится

Я хотел бы запустить и настроить процесс аналогично демону из скрипта. Моя оболочка эмулируется Zsh под Cygwin, а демон - SFK , базовый FTP-сервер. Что важно здесь, сценарий startserv.shможет быть составлен следующим образом: #!/bin/sh read -s -p "Enter Password: " pw user=testuser share=/fshare...

15
Что означают `1 >>` и `2 >>` в скрипте bash?

У меня есть следующий скрипт bash, из того, что я понимаю >>, используется для добавления вывода команды в существующий файл вместо перезаписи, но что он делает в этом случае? Этот скрипт вызывает некоторые исполняемые файлы для преобразования из одного формата в другой. Для каждого файла...

15
Какова лучшая практика для представления логического значения в сценарии оболочки?

Я знаю, что в них есть логические значения bash, но я никогда не видел, чтобы они использовались где-либо. Я хочу написать обертку для некоторой часто просматриваемой информации на моей машине, например, вставлен / подключен ли этот конкретный USB-накопитель. Какова была бы лучшая практика для...

15
spawn - команда не найдена!

Я использую Mac OS X 10.9.4, следующий скрипт для копирования файлов с локального компьютера на другой хост #!/bin/bash #!/usr/bin/expect echo "I will fail if you give junk values!!" echo " " echo "Enter file name: " read filePath echo " " echo "Where you want to copy?" echo "Enter" echo "1. if...

15
как проверить каталог пуст

У меня есть требование, если я выполняю скрипт ./123с аргументами пустого пути, скажем /usr/share/linux-headers-3.16.0-34-generic/.tmp_versions(этот каталог пуст). Должен отображаться «каталог пуст» Мой код: #!/bin/bash dir="$1" if [ $# -ne 1 ] then echo "please pass arguments" exit fi if [ -e $dir...