cat

cat命令用于连接文件并打印到标准输出设备上。

命令语法:cat [参数] [文件名]

参数说明:

参数 说明
-n 由1开始对所有输出的行数进行编号。
-b 由1开始对所有输出的行数进行编号,对于空白行不编号。
-s 当遇到有连续两行以上的空白行,就替换为一行的空白行。
-E 在每行结束处显示$。
-T 将 TAB 字符显示为^I

使用示例:

  1. 将一个万猫学社每个字占一行写入one.txt文件中,再查看文件one.txt内容。
echo -e '万\n猫\n学\n社' > one.txt
cat one.txt

效果如下图:

  1. 将one.txt的文件内容加上行号后输入到more.txt文件,再查看文件more.txt内容。
cat -n one.txt > more.txt
cat more.txt

效果如下图:

  1. 将one.txt文件内容清空,查看文件one.txt内容。
cat /dev/null > one.txt
cat one.txt

效果如下图:

可以看到one.txt文件没有任何内容。

file

file命令用于辨识文件类型。

命令语法:file [参数] [文件]

参数说明:

参数 说明
-b 列出辨识结果时,不显示文件名称
-c 详细显示指令执行过程,便于排错或分析程序执行的情形
-L 直接显示符号连接所指向的文件的类别
-v 显示版本信息
-z 解读压缩文件的内容

使用示例:

  1. 显示onemore.txt文件类型。
echo '万猫学社' > onemore.txt
file onemore.txt

效果如下图:

  1. 显示百度logo的文件类型并不显示文件名称。
wget https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png
file -b PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png

效果如下图:

find

find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

命令语法:find [参数] [文件]

参数说明:

参数 说明
-mount 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-amin n 在过去n分钟内被读取过文件
-type 文件类型 指定查找的文件类型,d: 目录,c: 字型装置文件,b: 区块装置文件,p: 具名贮列,f: 一般文件,l: 符号连结,s: socket
-cmin n 在过去n分钟内被修改过
-name name 查找文件名称为name的文件
-size n 文件大小

使用示例:

  1. 将当前目录及其子目录下所有文件后缀为.txt的文件列出来。
touch one.txt more.txt
find . -name "*.txt"

效果如下图:

  1. 将当前目录及其子目录下3天以前的普通文件列出来。
find . -type f -mtime +3

效果如下图:

cmp

cmp命令用于比较两个文件是否有差异。当相互比较的两个文件完全一样时,该指令不会显示任何信息。否则会标示出第一个不同之处的字符和列数编号。当不指定任何文件名称,或文件名为"-",则cmp指令会从标准输入设备读取数据。

命令语法:cmp [-clsv][-i <字符数目>][--help][第一个文件][第二个文件]

参数说明:

参数 说明
-c 除了标明差异处的十进制字码之外,一并显示该字符所对应字符
-i <字符数目> 指定一个数目
-l 标示出所有不一样的地方
-s 不显示错误信息
-v 显示版本信息
--help 显示帮助信息

使用示例:

将一个万猫学社77每个字占一行写入one.txt文件中:

echo -e '万\n猫\n学\n社\n77' > one.txt

将一个万猫学社88每个字占一行写入more.txt文件中:

echo -e '万\n猫\n学\n社\n88' > more.txt

比较one.txt文件和more.txt文件是否相同:

cmp one.txt more.txt

效果如下图:

可以看到one.txt文件和more.txt文件第5行就有不同之处。

diff

diff命令用于比较文件的差异。diff命令以逐行的方式,比较文本文件的异同处。如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录。

命令语法:diff [参数] [文件或目录1] [文件或目录2]

参数说明:

参数 说明
-<行数> 指定要显示多少行的文本,此参数必须与-c或-u参数一并使用
-c 显示全部内文,并标出不同之处
-u 以合并的方式来显示文件内容的不同
-a 只会逐行比较文本文件
-b 不检查空格字符的不同
-d 使用不同的演算法,以较小的单位来做比较
-i 不检查大小写的不同
-y 以并列的方式显示文件的异同之处
-W<宽度> 在使用-y参数时,指定栏宽

使用示例:

比较one.txt文件和more.txt文件,以并排格式输出。

diff one.txt more.txt -y -W 10

效果如下图:

最后,谢谢你这么帅,还给我点赞和关注。

微信公众号:万猫学社

微信扫描二维码

关注后回复「电子书」

获取12本Java必读技术书籍

Linux常用文件管理命令详解的更多相关文章

  1. Linux - 常用网络命令详解netstat,scp

    ifconfig 查看生效的ip信息. [root@local ~]# ifconfig eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICA ...

  2. Linux下ps命令详解 Linux下ps命令的详细使用方法

    http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...

  3. Linux下rar命令详解

    Linux下rar命令详解 用法: rar <命令> -<选项1> ….-<选项N> < 操作文档> <文件…> <@文件列表…> ...

  4. linux下tar命令详解

     linux下tar命令详解    tar是Linux环境下最常用的备份工具之一.tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件.ta ...

  5. Linux下top命令详解

    Linux下top命令详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不断刷 ...

  6. 【转帖】Linux定时任务Crontab命令详解

    Linux定时任务Crontab命令详解 https://www.cnblogs.com/intval/p/5763929.html 知道有crontab 以及 at 命令 改天仔细学习一下 讲sys ...

  7. Linux主要shell命令详解(上)

    [摘自网络] kill -9 -1即实现用kill命令退出系统 Linux主要shell命令详解 [上篇] shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的 ...

  8. Linux定时任务Crontab命令详解_转

    转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...

  9. Linux 系统性能监控命令详解

    Linux 系统性能监控命令详解 CPU MEMORY IO NETWORK LINUX进程内存占用查看方法 系统负载过重时往往会引起其它子系统的问题,比如:->大量的读入内存的IO请求(pag ...

随机推荐

  1. BOM与DOM之DOM操作

    目录 一:DOM操作 1.DOM介绍 2.DOM标准规定HTML文档中的每个成分都是一个节点(node): 3.DOM操作需要用关键字 二:查找标签 1.id查找 类查找 标签查找(直接查找) 2.i ...

  2. @property中的copy关键字

    1.@property中的copy的作用 防止外界修改内部的值 @interface Person : NSObject @property (nonatomic, retain) NSString ...

  3. 【BZOJ3545】Peaks(Kruskal重构树 主席树)

    题目链接 大意 给出有\(N\)个点\(M\)条边的一张图,其中每个点都有一个High值,每条边都有一个Hard值. 再给出\(Q\)个询问:\(v\) \(x\) \(k\) 每次询问查询从点\(v ...

  4. 他人学习Python感悟

    作者:王一 链接:https://www.zhihu.com/question/26235428/answer/36568428 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...

  5. 使用PHP利用phpmailer发送电子邮件

    先来几句废话:    phpMailer是一个非常强大的php发送邮件类,可以设定发送邮件地址.回复地址.邮件主题.html网页,上传附件,并且使用起来非常方便.     phpMailer的特点:  ...

  6. 私有化轻量级持续集成部署方案--04-私有代码仓库服务-Gitea

    提示:本系列笔记全部存在于 Github, 可以直接在 Github 查看全部笔记 企业级最流行的私有代码仓库是 Gitlab, 一开始我也打算部署 Gitlab作为私有代码仓库. 但部署完 d 成后 ...

  7. kube-proxy的三种工作模式

    kube-proxy模式详解 kubernetes里kube-proxy支持三种模式,在v1.8之前我们使用的是iptables 以及 userspace两种模式,在kubernetes 1.8之后引 ...

  8. 日行一算(Vowel-大小写转换)

    题目 题目描述 solo从小就对英文字母非常感兴趣,尤其是元音字母(a,e,i,o,u,A,E,I,O,U),他在写日记的时候都会把元音字母写成大写的,辅音字母则都写成小写,虽然别人看起来很别扭,但是 ...

  9. 详细介绍Windows下也能够使用osw性能升级历史

    1.Windows系统历史性能分析困难背景 在Linux/Unix上.要追朔历史性能,一般採用部署nmon进行性能监控採集与存储的方式实现.可是却没有在Windows上的版本号. Windows系统假 ...

  10. spring IOC的理解,原理与底层实现?

    从总体到局部 总 控制反转:理论思想,原来的对象是由使用者来进行控制,有了spring之后,可以把整个对象交给spring来帮我们进行管理                DI(依赖注入):把对应的属性 ...