для выполнения команды для различных переменных в скрипте shell

Если система зависает при использовании SSD для Mint, попробуйте вместо этого запустить Live-дистрибутив, чтобы узнать, виноват ли диск.

1
09.09.2018, 23:38
2 ответа

Вам не нужно хранить результат запроса к базе данных в одной переменной.

app/oracle/product/10.2.0/bin/sqlplus -s user/passwd <<END_SQL | while IFS= read -r thing; do X="$thing" Y="$(date)"./test.sh; done
set pages 0 echo off feed off timing off
select entity_name,uid,set_date from table_name;
exit
END_SQL

Это считывает вывод команды sqlplusи вызывает ваш скрипт по одному разу для каждой строки, устанавливая значения переменных среды Xи Yв процессе.

1
27.01.2020, 23:23

Ваш запрос не ясен. Вы в состоянии изменить сценарий? Если нет, и если это явно зависит от переменных Xи Y, вам понадобится переменная temp/loop. Чтобы запустить test.shдля каждого элемента массива, попробуйте выполнить цикл for(, если ни в одном из элементов нет пробелов):

for TMP in "${var[@]}"; do X="$TMP" Y=$(date)./test.sh; done
2
27.01.2020, 23:23

Теги

Похожие вопросы