我在Linux Fedora上有a.dat
文本文件,这是一个数字表。我在第1列和第2列的数字非常大,大于2000000
,所有其他数字都小于1000
。我想使用linux实用程序,它可以打开一个文件,搜索它包含大数字(条件是>2000000
)并用计数器的值替换每个找到的数字,每次数字被替换时递增。
是否可以使用grep
使用{{1}}来终端,以及如何做到这一点?
答案 0 :(得分:1)
您可以使用awk
执行所需操作。通常,您可以使用sed
替换文件,但只使用sed
替换大于2000000的值将会非常棘手。
如果我是你,我会写一个简单的ruby或python脚本。一般来说,它会花费你更少的时间,更容易维护和阅读。