我使用两个命令来扫描频道:
awk 'BEGIN{while(" w_scan -c PL -x " | getline ) print >> "tmp" }'
awk 'BEGIN{while(" w_scan -I tmp -E 0 -t 3 -F " | getline) print >> "channels" }'
我也想做同样的事情,但使用一个命令。如何简化以跳过写入 tmp?
感谢您的帮助。
编辑:
我试过这个命令,但它不起作用:
awk 'BEGIN { while (" w_scan -c PL -x " | getline ){split($0, tab, RS) system( " w_scan -I \047" tab[1] "\047 -E 0 -t 3 -F " ">>" "channels" )}}'
结果错误 ->在此处输入链接描述
编辑-1
当我使用此脚本时不起作用。
运行.awk
BEGIN {
while (" w_scan -c PL -x " | getline ) {
split($0, tab, RS)
system( " w_scan -I '\047'" tab[1] "'\047' -E 0 -t 3 -F >> channels" )
}
}
结果错误 →在此处输入链接描述
当我使用这个脚本时,它运行良好。
sh脚本
#!bin/bash
awk 'BEGIN{while(" w_scan -c PL -x " | getline ) print >> "tmp" }'
awk 'BEGIN{while(" w_scan -I tmp -E 0 -t 3 -F " | getline) print >> "channels" }'
结果 --> 在此处输入链接描述