Я "створюю сценарій оболонки, куди мені це потрібнопередайте два параметри (як хеш-теги) для циклу. для екс. (ключове значення) тут я порівнюю параметр "значення" з деяким значенням і на основі якого потрібно виконати певну дію за параметром "ключ".
люблю:
for i in $(echo `awk "{print $0}" ab4`); or for i in $(cat ab4);
do if [ "`awk -F":" "{print $2}" $i`" = "`some value`" ];
then echo "go ahead and restart app service on `awk "{print $1}" $i`";
{тут я використовую команду для перезапуску служби, але для цього мені потрібна ця $ 1, яка є ім'ям хоста}
else echo "2nd condition here";
fi;
done.
вміст ab4 виглядає так:
hostname app.rpmversion
Коли я запускаю це, отримую помилку: "key" "value" in ab4 parameters are not a command.
Будь ласка, допоможіть
Відповіді:
2 для відповіді № 1Ви можете використовувати read
вбудований для цього:
while read -r key val; do
printf "Processing key=%s, value=%sn" "$key" "$val"
done < ab4
Вихід:
Processing key=hostname, value=app.rpmversion