我已经创建了一个awk脚本,并像这样使用它:
# grep -E "[PM][IP][DO][:S]" file.txt | awk-script如何修改awk脚本以包含grep命令所做的工作(该命令正在搜索"PID:“或"MPOS"?
awk-script是:
#!/usr/bin/awk -f
/Sleeve/ {
printf("%8d, %7d, %7.2f, %7.2f, %7.2f\n", $5, $6, $7, $30, $31)
}
/Ambient/ {
printf("%8d, %7d,,,, %7.2f, %7.2f\n", $5, $6, $7, $8)
}
/MPOS:/ {
printf("%8d, %7d,,,,,, %5d, %5d\n", $4, $5, $2, $3)
}发布于 2009-10-02 15:33:16
如果你只想搜索PID:或MPOS,你可以说如果你在行中找不到它们,你想跳过以下规则:
#!/usr/bin/awk -f
!/PID:|MPOS/ {
next
}
/Sleeve/ {
printf("%8d, %7d, %7.2f, %7.2f, %7.2f\n", $5, $6, $7, $30, $31)
}
/Ambient/ {
printf("%8d, %7d,,,, %7.2f, %7.2f\n", $5, $6, $7, $8)
}
/MPOS:/ {
printf("%8d, %7d,,,,,, %5d, %5d\n", $4, $5, $2, $3)
}发布于 2009-10-02 16:55:15
我在busybox中尝试了litb的 answer (在Bash的Ubuntu上),它对我很有效。为了进行测试,我使用了以下示例来匹配到busybox的符号链接的位置
#!/home/username/busybox/awk -f并使用以下命令运行测试:
./awk-script file.txt我还在busybox sh (使用PATH=/home/username/busybox:$PATH,尽管这不是必需的)下运行了测试,它在那里工作。
当你说“我还有悲伤”的时候那是什么意思?您是否收到错误消息或不正确的结果?
顺便说一句,除非您要搜索字符的所有排列,否则可以像这样执行grep:
grep -E "(PID:|MPOS)" file.txthttps://stackoverflow.com/questions/1510175
复制相似问题