用于替换前100行的特定csv文件列的命令

时间:2013-04-18 10:44:56

标签: awk

以下命令在完整的csv文件中用值e替换第二列, 但是,如果我只想在前100行中进行更换,那该怎么办呢?

awk -F, '{$2="e";}1' OFS=, file

其余的csv文件行应该完好无损..

2 个答案:

答案 0 :(得分:7)

awk -F, 'NR<101{$2="e";}1' OFS=, file

NR内置变量可根据使用情况为您提供正在处理的记录总数或行号。在上面的awk示例中,NR变量具有行号。当您放置模式NR<101时,前100行的操作将变为true。一旦它为假,它将默认为1,它将按原样打印剩余的行。

答案 1 :(得分:5)

试试这个:

awk -F, 'NR<=100{$2="e"}1' OFS=, file