xdh*_*ore 5 linux bash shell command-line
有没有办法通过命令行工具过滤掉文件中的所有唯一行而不对行进行排序?我想基本上这样做:
sort -u myFile
Run Code Online (Sandbox Code Playgroud)
没有排序的性能.
Ken*_*ent 18
删除重复的行:
awk '!a[$0]++' file
Run Code Online (Sandbox Code Playgroud)
这是着名的awk单行.对inet有很多解释.这是一个解释:
这种单线是非常惯用的.它记录了关联数组"a"中看到的线(数组在Awk中始终是关联的),同时测试它是否曾经看过该线.如果它之前已经看到过该行,那么[line]> 0和!a [line] == 0.任何计算结果为false的表达式都是no-op,任何eval为true的表达式都等于"{print }".
| 归档时间: |
|
| 查看次数: |
1258 次 |
| 最近记录: |