jwb*_*ley 2 bash for-loop count
我在 bash 中有一个 for 循环;
for Names in `grep "name" $people`
do
echo "name is $name"
done
Run Code Online (Sandbox Code Playgroud)
我怎么能有一个像这样的 if 语句;
for Name in `grep "name" $people`
# Make sure we found some names
if [ "count of $Name=0" ]
then
echo "no names found"
fi
# Else, if we did grep out a list of names, print them
do
echo "name is $Name"
done
Run Code Online (Sandbox Code Playgroud)
如果块的返回码为 0(意味着它从未进入循环并调用),则添加复合条件测试 (&&)以打印调试文本:forfalse
for NAME in $(grep "name" $people)
do
echo "Name is ${NAME}"
false
done && echo "no names found"
Run Code Online (Sandbox Code Playgroud)
如果您不喜欢它的读取方式,只需反转 for:
! for NAME in $(grep "name" $people)
do
echo "Name is ${NAME}"
false
done || echo "no names found"
Run Code Online (Sandbox Code Playgroud)