我有类似以下内容的代码。
awk '{ print $1, $2}' file |
while IFS= read A B
do
echo $A
if [ "$B" -eq "16" ];
then
grep -A 1 $A $1 | python unreverse.py
else
grep -A 1 $A
fi
done
其中awk命令为文件中的每一行输出一个字符串和一个数字。但是,我不太明白如何让while循环工作。它没有正确分割线,因为B是空的,我得到“预期的整数表达式”。
答案 0 :(得分:2)
您实际上是使用IFS= read A B
取消定义IFS,因此不会发生单词拆分 并且所有输入都被捕获到$ A中。只需删除IFS=
,或使用IFS=" "
,您就会感到满意