awk獲取執行shell命令后的結果:
awk 'BEGIN{
i=1;while(i<=5){
system("date > date.tmp")
getline < "date.tmp"
print $1
system("sleep 2")
close("date.tmp")
i++
}
}'
或者
awk 'BEGIN{
i=1;while(i<=5){
system("date > date.tmp")
getline a< "date.tmp"
print a
system("sleep 2")
close("date.tmp")
i++
}
}'
或者
awk 'BEGIN{
i=1;while(i<=5){
"date" | getline
print $1
system("sleep 2")
close("date")
i++
}
}'
注意:close("date.tmp")或close("date")一句必不可少,否則每次循環從管道拿到的都是已經打開的文件或命令的數據