Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

linux 去重

作者:我在坚强也需要有人疼   发布日期:2025-02-19   浏览:88

# 使用 sort 和 uniq 命令去重
# 该命令会先对文件内容进行排序,然后再去除重复行
sort file.txt | uniq > unique_file.txt

# 如果只想去除重复行而不改变原有顺序,可以使用 awk
# 该命令会读取文件并只输出第一次出现的行,保留原始顺序
awk '!seen[$0]++' file.txt > unique_file.txt

# 使用 sed 去重(适用于简单场景)
# 该命令会在每一行前加上行号,排序后去除重复行,再去除行号
sed 'G; s/\n/&&/; /^\([ -~]*\n\).*\n\1/d; s/\n//' file.txt > unique_file.txt

解释说明:

  1. sort file.txt | uniq > unique_file.txt:

    • sort file.txt:对文件 file.txt 的内容进行排序。
    • uniq:去除相邻的重复行。
    • > unique_file.txt:将结果保存到 unique_file.txt 文件中。
  2. awk '!seen[$0]++' file.txt > unique_file.txt:

    • !seen[$0]++$0 表示当前行的内容,seen 是一个关联数组,用来记录每行是否已经出现过。如果某行没有出现过,则输出该行。
    • 这种方法保留了原始文件的顺序,并且只输出第一次出现的行。
  3. sed 'G; s/\n/&&/; /^\([ -~]*\n\).*\n\1/d; s/\n//' file.txt > unique_file.txt:

    • 这是一个较为复杂的 sed 命令,适用于简单的去重场景。它通过在每行前后添加换行符,然后删除重复行,最后去除多余的换行符。

如果你需要更具体的用法或有其他问题,请告诉我!

上一篇:linux关机的命令

下一篇:linux解压缩zip

大家都在看

linux长ping命令

linux关机命令行

linux重启oracle命令

linux搭建sftp

linux 追踪路由

linux配置静态路由,并永久生效

linux查看后台

linux添加用户到指定组

shutdown linux

linux gzip解压

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站