次のプログラムがあります。
while true
do
echo 'Your pass: '
read password
if [ $password == 'qwerty' ]; then
echo 'Nice!'
break
fi
done
私は利用できるパラメータプログラムにパラメータがある場合にのみ適用されます。ただし、この場合は機能しません./program.sh password
。ループでプログラムに送信する必要があるパスワードのリストがあります。
xargs -a list ./program.sh
動作しません。
ベストアンサー1
xargs
ここで使用する理由はありません。簡単に次のようにします。
while IFS= read -r password
do
if [ "$password" = 'qwerty' ]; then
echo 'Nice!'
break
fi
done
次に実行します。
./program.sh < list
本当に欲しいなら、xargs
次のようにすることができます。
for password do
case "$password" in
'qwerty')
echo 'Nice!'
;;
esac
done
それから:
xargs -rd '\n' -a list ./program.sh