Linux常用文件管理命令详解

简介: `cat`命令用于连接文件并打印到标准输出设备上。命令语法:`cat [参数] [文件名]`参数说明:

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

效果如下图:

最后,谢谢你这么帅,还给我 点赞关注
相关文章
|
4天前
|
NoSQL 关系型数据库 MySQL
Linux学习记录---(1、基本命令)
该博客文章提供了Linux系统中基本命令的使用记录,包括文件和目录操作、Redis服务管理、MySQL数据库操作以及Tomcat服务器的启动和检查。
Linux学习记录---(1、基本命令)
|
5天前
|
运维 Ubuntu Linux
Linux系统之ncdu命令的基本使用
【8月更文挑战第8天】Linux系统之ncdu命令的基本使用
13 2
Linux系统之ncdu命令的基本使用
|
1天前
|
安全 Linux 开发者
Linux笔记之ldd命令详解
`ldd`命令是Linux环境下一个非常实用的工具,用于显示一个程序运行时所需的共享库依赖。它帮助开发者和系统管理员快速诊断程序运行问题,特别是在处理"找不到库文件"或者"错误的库文件版本"等错误时。然而,出于安全的考虑,对于不信任的可执行文件,应该慎用 `ldd`命令,可以考虑使用其他工具如 `objdump`。总的来说,懂得如何妥善且安全地使用 `ldd`,对于维护一个稳定和高效的Linux系统来说,是非常重要的。
16 9
|
2天前
|
Linux Shell
linux命令
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
3天前
|
移动开发 运维 网络协议
运维必备 | Linux netstat命令详解
运维必备 | Linux netstat命令详解
|
3天前
|
Linux
真香~ Linux vi常用命令汇总!
真香~ Linux vi常用命令汇总!
|
3天前
|
Linux Shell
linux命令
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
6天前
|
运维 安全 Linux
【超实用秘籍】Linux文件传输新高度:10个scp命令让你瞬间变身文件传输达人,从此告别繁琐操作!
【8月更文挑战第13天】文件传输是运维工作的核心部分,尤其对Linux用户来说,了解高效且安全的传输方法非常重要。本文介绍10种scp命令的应用技巧,涵盖基础文件传输、密钥认证、目录复制等场景,助你灵活运用这一基于SSH协议的安全工具。从简单的文件传输到复杂的多主机文件迁移,scp都能轻松应对。通过本文的学习,你将能更熟练地使用scp命令,提高工作效能。
26 6
|
2天前
|
SQL 存储 分布式计算
Linux退出Hive命令
【8月更文挑战第14天】
|
2天前
|
Linux
会玩这10个Linux命令,一定是个有趣的IT男!
会玩这10个Linux命令,一定是个有趣的IT男!