循环内有awk语句只执行一次解决方案
循环内有awk语句只执行一次Perl code#!/bin/shi0while read LINEdoecho i $iecho $LINEdone my.file
循环内有awk语句只执行一次
Perl code#!/bin/shi=0while read LINEdo echo "i= $i" echo $LINEdone < my.file
以上代码会将my.file文件内容逐行输出。改成以下代码后,循环就只执行一次
Perl code#!/bin/shi=0while read LINEdo echo "i= $i" echo $LINE echo "region 1 is: `awk '{print $1}'` #增加这一句,本意想输出第一列done < my.file
结果显示 i=0,增加的语句将整个文本的第一列输出而不是第一行的第一列。
请问,这是为什么?是因为 awk 语句处理的时候会读取整个文本吗?
[解决办法] echo "region 1 is: `echo $LINE | awk '{print $1}'`"
[解决办法]C/C++ code#!/bin/shi=0while read linedo echo "i=$i" echo $line let i=$i+1done < my.filewhile read linedo echo "i=$i" echo $line echo $line | awk '{print "region 1 is:"$1}' let i=$i+1done < my.file
[解决办法]
[解决办法]