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

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

2
`tee` для команд
teeможет перенаправить стандартный ввод данных в стандартный вывод и файл. echo Hello, World! | tee greeting.txt Приведенная выше команда отобразит приветствие на экране терминала и сохранит его в содержимом greeting.txtфайла, создав файл, если его нет с таким именем. Также есть -aпереключатель для teeдобавления в существующий файл вместо перезаписи. Есть ли …

2
Передать параметры командной строки в программу внутри сценария оболочки
Что же касается ./script.sh arg1 [arg2 arg3 ...], аргументов командной строки arg1, arg2... может быть приобретено $1, $2... Но число аргументов НЕ фиксировано. В сценарии оболочки я хочу передать аргументы, начиная с arg2программы, #/bin/bash ... /path/to/a/program [I want to pass arg2 arg3 ... to the program] ... Как я мог …

3
Ошибка Bash throws, строка 8: $ 1: несвязанная переменная
Я пытаюсь научиться использовать getopts, чтобы у меня могли быть сценарии с анализируемым вводом (хотя я думаю, что getopts мог бы быть лучше). Я пытаюсь просто написать простой скрипт, чтобы вернуть процент использования разделов. Проблема в том, что одной из моих функций bash, похоже, не нравится то, что я называю …

7
как проверить каталог пуст
У меня есть требование, если я выполняю скрипт ./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 ] then printf "minimum file size: %s\n\t%s\n" \ $(du …

2
Как работает этот шебанг, начинающийся с двойного дефиса (-)?
Я нашел следующий вид шебанга на странице RosettaCode: --() { :; }; exec db2 -txf "$0" Это работает для Db2, и аналогичная вещь для Postgres. Однако я не понимаю всей линии. Я знаю, что двойная черта - это комментарий в SQL, и после этого он вызывает исполняемый файл Db2 с …

2
Конвертировать xlsx в xls в сценарии оболочки linux
Мне нужно преобразовать файл ".xlsx" в ".xls", используя команду оболочки. В моей работе мы в настоящее время используем команду xlsx2csv, но теперь требования были изменены, и нам нужно преобразовать все файлы ".xlsx" в файлы ".xls" для дальнейшего расчета. Для этого кто-то из моих сотрудников разработал одну команду, которая может конвертировать …

1
Есть ли способ сказать, был ли сценарий оболочки убит с сигналом 9
У меня есть скрипт bash (вызываемый из Java-программы), который постоянно убивают. Я всегда ловлю signal 15с, trapно потом приходит какой-то другой сигнал, который я подозреваю, signal 9но я в основном слеп, чтобы понять, действительно ли это signal 9. Я знаю, что вы не можете trap signal 9, так есть ли …

1
POSIX-эквивалент для тайм-аута GNU?
Команда GNU coreutils timeoutчрезвычайно удобна для определенных сценариев, позволяя использовать вывод команды, если она выполняется быстро, и пропускать ее, если это займет слишком много времени. Как я могу приблизиться к базовому поведению timeoutиспользования только указанных POSIX утилит? (Я имею в виду , что может включать в себя комбинацию wait, sleep, …

2
Как я могу безопасно создавать и получать доступ к временным файлам из сценариев оболочки?
Я читал, что перенаправление вывода в файл с фиксированным именем в /tmpможет быть угрозой безопасности, потому что, если злоумышленник (или недовольный) замечает, что файл /tmp/tmpfileformyscript.tmpсоздается, когда я запускаю свой скрипт (даже если у него нет доступа на чтение к моему скрипт), например, он может создать символическую ссылку, ln -s ~wildcard/.bashrc …

3
Как удалить столбец или несколько столбцов из файла с помощью команды оболочки?
Мой файл, ARCHIVE B1_NAME B2_NAME B3_NAME ELEMENT INFO_NAM WERT PROCID -------- -------- -------- -------- -------- -------- ---- ------ 15MinAvg AIRSS 33-GIS DMDMGIS1 I MvAvr15m 1123 CP 15MinAvg AIRSS 33-GIS DMDMGIS1 P MvAvr15m 2344 CP 15MinAvg AIRSS 33-GIS DMDMGIS1 Q MvAvr15m 4545 CP 15MinAvg AIRSS 33-GIS DMDMGIS2 I MvAvr15m 6576 CP …

3
Проверка даты в оболочке
Я хочу проверить приведенный ниже формат даты в сценарии оболочки 2015-Jul-13 Я использую, date -d "2015-Jul-13" +"%Y-%b-%d"но дает ошибку как date: invalid date '2015-Jul-13'

3
Подготовьте ответы на вопросы команды
Допустим, я хочу написать сценарий оболочки, который выполняет только одну команду. Но эта команда плохо разработана. Он не предлагает никаких параметров командной строки; вместо этого он задает некоторые вопросы и ждет ввода пользователя. Есть ли способ подготовить этот ввод в сценарии, чтобы на вопросы отвечали автоматически?

9
Отфильтровать или передать определенные разделы файла
У меня есть входной файл с некоторыми разделами, которые разграничены начальным и конечным тегами, например: line A line B @@inline-code-start line X line Y line Z @@inline-code-end line C line D Я хочу применить преобразование к этому файлу так, чтобы строки X, Y, Z фильтровались через какую-то команду ( nlнапример), …

6
Скопируйте открытый ключ ssh на несколько хостов Linux
Я пытаюсь скопировать .ssh / id_rsa.pub с нашего центрального сервера на несколько серверов. У меня есть следующий скрипт, который я обычно использую для отправки изменений на разные серверы. #!/bin/bash for ip in $(<IPs); do # Tell the remote server to start bash, but since its # standard input is not …
14 shell-script  ssh 

1
Как удалить цветовые коды из стандартного вывода и передать в файл и стандартный вывод
У меня есть программа, которая использует printfнекоторые tputсмешанные в ней, и я хотел бы направить вывод на стандартный вывод, а также файл. Я бы предпочел использовать, sedтак как я не хочу никаких ненужных зависимостей от моего сценария. Вот что у меня так далеко. printf "\n$(tput setaf 6)| $(tput sgr0)$(tput setaf …

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