我的文件看起来像这样......
abc100200300 abmen
abc100200300 arcxi
xyz200300300 aelmi
Run Code Online (Sandbox Code Playgroud)
如何将具有重复项的行(基于仅检查前 12 个字符)打印到单独的文件中?
所以在单独的文件中我应该有
abc100200300 abmen
abc100200300 arcxi
Run Code Online (Sandbox Code Playgroud)
我不确定它是标准选项还是 GNU 扩展,但如果你uniq有一个-w标志:
-w, --check-chars=N
compare no more than N characters in lines
Run Code Online (Sandbox Code Playgroud)
所以
sort file | uniq -D -w12
abc100200300 abmen
abc100200300 arcxi
Run Code Online (Sandbox Code Playgroud)
或者,重定向到一个新文件
sort file | uniq -D -w12 > newfile
Run Code Online (Sandbox Code Playgroud)
单程:
cut -c -12 file | uniq -d | grep -f - file
Run Code Online (Sandbox Code Playgroud)
提取前 12 个字符,获取重复的字符,并获取与重复模式匹配的行。
| 归档时间: |
|
| 查看次数: |
3603 次 |
| 最近记录: |