Tru*_*0ur 2 bash password xargs
有一个程序是这样的:
while true
do
echo 'Your pass: '
read password
if [ $password == 'qwerty' ]; then
echo 'Nice!'
break
fi
done
Run Code Online (Sandbox Code Playgroud)
只有当程序有参数时,我才能使用xargs。但在这种情况下./program.sh password
不起作用。我有一个密码列表,我需要将它们循环发送到该程序。
xargs -a list ./program.sh
不起作用。
ter*_*don 11
没有理由在xargs
这里使用,您可以简单地执行以下操作:
while IFS= read -r password
do
if [ "$password" = 'qwerty' ]; then
echo 'Nice!'
break
fi
done
Run Code Online (Sandbox Code Playgroud)
然后运行它:
./program.sh < list
Run Code Online (Sandbox Code Playgroud)
如果你真的想要xargs
,你可以这样做:
for password do
case "$password" in
'qwerty')
echo 'Nice!'
;;
esac
done
Run Code Online (Sandbox Code Playgroud)
进而:
xargs -rd '\n' -a list ./program.sh
Run Code Online (Sandbox Code Playgroud)