Jerkwin分享 http://blog.sciencenet.cn/u/Jerkwin

博文

利用sort与uniq过滤文件

已有 2664 次阅读 2014-3-30 05:20 |个人分类:我的工具箱|系统分类:科研笔记| bash

利用sort与uniq过滤文件
2014–03–28 18:11:32

设有两类文件, 扩展名分别为A和B, 可能的集合关系如下:

  • 并集 AB: 属于A或B的文件, 所有可能文件

    ls *.A *.B | sort | uniq

  • 交集 AB: 同时属于A和B的文件, A和B互有对应的文件

    ls *.A *.B | sort | uniq -d

  • 交集的补集 ABˉˉˉˉˉˉˉˉˉ: 不同时属于A和B的文件, A和B无对应的文件

    ls *.A *.B | sort | uniq -u

  • A的差集 AB=AABˉˉˉˉˉˉˉˉˉ: 属于A但不属于B的文件

    ls *.A *.B *.B | sort | uniq -u

  • B的差集 BA=BABˉˉˉˉˉˉˉˉˉ: 属于B但不属于A的文件

    ls *.B *.A *.A | sort | uniq -u

File

若A包含B, 上面的做法可以简化.

  • 并集 AB=A: ls *.A

  • 交集 AB=B: ls *.B

  • 交集的补集 ABˉˉˉˉˉˉˉˉˉ=AB: ls *.A *.B | sort | uniq -u

  • A的差集 AB=AABˉˉˉˉˉˉˉˉˉ: ls *.A *.B | sort | uniq -u

  • B的差集 BA=BABˉˉˉˉˉˉˉˉˉ=

应用场景

提交很多作业, 每个作业有一个输入文件, 完成后会产生一个输出文件, 输入文件和输出文件存放于同一文件夹下 适当利用这些命令可以快速过滤文件, 知道哪些作业已完成, 哪些作业未完成, 也可以快速地将已完成的作业移到其他地方保存.



https://blog.sciencenet.cn/blog-548663-779503.html

上一篇:Bash脚本中使用颜色
下一篇:gnuplot颜色设置
收藏 IP: 130.184.197.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-1 07:01

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部