体验简介
场景将提供一台配置了Aliyun Linux 2操作系统的ECS实例(云服务器)。通过本教程的操作,您可以学习Linux系统中常用的文件管理命令。
创建资源
开通资源
- 在实验主页面,页面左侧,单击 云产品资源 下拉列表,查看本次实验所需资源。
- 单击屏幕右侧 创建资源 ,免费创建当前实验所需云产品资源。
说明:
资源创建过程需要1~3分钟。完成实验资源的创建后,您可以在 云产品资源 列表查看已创建的资源信息,例如:IP地址、子用户名称和子用户密码等。
磁盘管理命令
- cat命令。
cat命令描述:该命令用于连接文件并打印到标准输出设备上。
cat命令语法:
cat [参数] [文件名]
参数说明:
-n
由1开始对所有输出的行数进行编号。
-b
由1开始对所有输出的行数进行编号,对于空白行不编号。
-s
当遇到有连续两行以上的空白行,就替换为一行的空白行。
-E
在每行结束处显示$。
-T
将 TAB 字符显示为^I。
cat命令使用示例:
a. 执行如下命令,将一个自增序列写入test1.txt文件中。
for i in $(seq 1 10); do echo $i >> test1.txt ; done
b. 执行如下命令,查看文件test1.txt内容。
cat test1.txt
返回结果如下所示。
c. 执行如下命令,将test1.txt的文件内容加上行号后输入到test2.txt文件。
cat -n test1.txt > test2.txt
d. 执行如下命令,查看文件test2.txt内容。
cat test2.txt
返回结果如下所示。
e. 执行如下命令,将test1.txt文件内容清空。
cat /dev/null > test1.txt
f. 执行如下命令,查看文件test1.txt内容。
cat test1.txt
返回结果如下所示,您可以看到test1.txt文件没有任何内容。
- cmp命令。
cmp命令描述:该命令用于比较两个文件是否有差异。当相互比较的两个文件完全一样时,该指令不会显示任何信息。否则会标示出第一个不同之处的字符和列数编号。当不指定任何文件名称,或文件名为"-",则cmp指令会从标准输入设备读取数据。
cmp命令语法:
cmp [-clsv][-i <字符数目>][--help][第一个文件][第二个文件]
参数说明:
-c
除了标明差异处的十进制字码之外,一并显示该字符所对应字符。
-i <字符数目>
指定一个数目。
-l
标示出所有不一样的地方。
-s
不显示错误信息。
-v
显示版本信息。
--help
在线帮助。
cmp命令使用示例:
a. 执行如下命令,将一个自增序列1-5写入test1.txt文件中。
for i in $(seq 1 5); do echo $i >> test1.txt ; done
b. 执行如下命令,比较test1.txt文件和test2.txt文件是否相同。
cmp test1.txt test2.txt
返回结果如下所示,您可以看到test1.txt文件和test2.txt文件第一行就有不同之处。
- diff命令。
diff命令描述:该命令用于比较文件的差异。diff命令以逐行的方式,比较文本文件的异同处。如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录。
diff命令语法:
diff [参数] [文件或目录1] [文件或目录2]
参数说明:
-<行数>
指定要显示多少行的文本。此参数必须与-c或-u参数一并使用。
-c
显示全部内文,并标出不同之处。
-u
以合并的方式来显示文件内容的不同。
-a
diff预设只会逐行比较文本文件。
-b
不检查空格字符的不同。
-d
使用不同的演算法,以较小的单位来做比较。
-i
不检查大小写的不同。
-y
以并列的方式显示文件的异同之处。
-W<宽度>
在使用-y参数时,指定栏宽。
diff命令使用示例:
执行如下命令,比较test1.txt文件和test2.txt文件,以并排格式输出。
diff test1.txt test2.txt -y -W 50
返回结果如下所示,您可以看到test1.txt文件和test2.txt文件的不同之处。
- file命令。
file命令描述:该命令用于辨识文件类型。
file命令语法:
file [参数] [文件]
-b
列出辨识结果时,不显示文件名称。
-c
详细显示指令执行过程,便于排错或分析程序执行的情形。
-f<名称文件>
指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
-L
直接显示符号连接所指向的文件的类别。
-v
显示版本信息。
-z
解读压缩文件的内容。
file命令使用示例:
a. 执行如下命令,显示test1.txt文件类型。
file test1.txt
返回结果如下所示,您可以看到test1.txt文件类型是ASCII text。
b. 执行如下命令,显示test2.txt文件类型并不显示文件名称。
file -b test2.txt
5.find命令。
find命令描述:该命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
find命令语法:
find [参数] [文件]
参数说明:
-mount
只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件。
-amin n
在过去n分钟内被读取过文件。
-type c
文件类型是c的文件。
-cmin n
在过去n分钟内被修改过。
-name name
查找文件名称为name的文件。
find命令使用示例:
a. 执行如下命令,将当前目录及其子目录下所有文件后缀为.txt的文件列出来。
find . -name "*.txt"
返回结果如下所示。
b. 执行如下命令,查找系统中所有文件长度为0的普通文件,并列出它们的完整路径。
find / -type f -size 0 -exec ls -l {} \;
返回结果如下所示。