我在文件中有如下文字。
abcdxyz Time(0.010),blah blah blah
abcdxyz Time(1.010),blah blah blah
abcdxyz Time(0.010),blah blah blah
abcdxyz Time(2.010),blah blah blah
abcdxyz Time(3.010),blah blah blah
abcdxyz Time(8.010),blah blah blah
我想要查看Time()
中的值大于2.00
的所有行。我怎么能在ksh中做到这一点。
仅供参考:我的操作系统是Red Hat linux,我使用的是ksh
答案 0 :(得分:2)
尝试使用awk
awk -F'[()]' '$2>2{print}' file
输出:
abcdxyz Time(2.010),blah blah blah
abcdxyz Time(3.010),blah blah blah
abcdxyz Time(8.010),blah blah blah
答案 1 :(得分:0)
这适用于(在AIX / ksh上)
sed 's/\(.*\)Time(\(.*\))\(.*\)/\2 \1Time(\2)\3/' a.dat | awk '{ if ($1 > 2.0) { $1="" ; print } }'