Linux 常用命令(一)文件操作命令
2.1 命令的提示符
[root@localhost ~]#
- []:这是提示符的分隔符号,没有特殊含义。
- root:显示的是当前的登录用户。
- @:分隔符号,没有特殊含义。
- localhost:当前系统的简写主机名(完整主机名是localhost.localdomain)。
- ~:代表用户当前所在的目录,此例中用户当前所在的目录是家目录。
- #:命令提示符。超级用户是#,普通用户是$
2.2 命令的基本格式
[root@localhost ~]# 命令 [选项] [参数]
选项:是用于调整命令的功能的。
参数:是命令的操作对象,如果省略参数,是因为有默认参数
2.3 ls命令
ls是最常见的目录操作命令,主要作用是显示目录下的内容。
- 命令名称:ls。
- 英文原意:list。
- 所在路径:/bin/ls。
- 执行权限:所有用户。
**功能描述:**显示目录下的内容。
[root@localhost ~]#ls [选项] [文件名或目录名]
选项:
-a: 显示所有文件
-d: 显示目录信息,而不是目录下的文件
-h: 人性化显示,按照我们习惯的单位显示文件大小
-i: 显示文件的i节点号
-l: 长格式显示
--color=when: 支持颜色输出,when的值默认是always(总显示颜色),也可以是never(从不显示颜色)和auto(自动)
示例:
[root@localhost ~]# ls -l
总用量 44
-rw-------. 1 root root 1207 1月14 18:18 anaconda-ks.cfg
#权限 引用计数 所有者 所属组 大小 文件修改时间 文件名
- 第一列:权限。
- 第二列:引用计数。文件的引用计数代表该文件的硬链接个数,而目录的引用计数代表该目录有多少个一级子目录。
- 第三列:所有者,也就是这个文件属于哪个用户。默认所有者是文件的建立用户
- 第四列:所属组。默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组。
- 第五列:大小。默认单位是字节。
- 第六列:文件修改时间。文件状态修改时间或文件数据修改时间都会更改这个时间,注意这个时间不是文件的创建时间。
- 第七列:文件名。
2.4 touch命令
创建空文件或更新文件时间,这个命令的基本信息如下。
- 命令名称:touch。
- 英文原意:change file timestamps。
- 所在路径:/bin/touch。
- 执行权限:所有用户。
**功能描述:**修改文件的时间戳。
[root@localhost ~]#touch [文件名或目录名]
示例:
[root@localhost ~]# ls -l
total 4
-rw-------. 1 root root 1259 Mar 5 20:59 anaconda-ks.cfg
[root@localhost ~]# touch anaconda-ks.cfg
[root@localhost ~]# ls -l
total 4
-rw-------. 1 root root 1259 Jun 2 10:40 anaconda-ks.cfg
2.5 stat命令
stat是查看文件详细信息的命令,而且可以看到文件的这三个时间,其基本信息如下。
- 命令名称:stat。
- 英文原意:display file or file system status。
- 所在路径:/usr/bin/stat。
- 执行权限:所有用户。
**功能描述:**显示文件或文件系统的详细信息。
[root@localhost ~]# stat [文件名或目录名]
示例:
[root@localhost ~]# stat anaconda-ks.cfg
File: ‘anaconda-ks.cfg’
Size: 1259 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 33574980 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:admin_home_t:s0
Access: 2021-06-02 10:40:37.532019145 +0800
Modify: 2021-06-02 10:40:37.532019145 +0800 #数据修改时间
Change: 2021-06-02 10:40:37.532019145 +0800 #状态修改时间
Birth: -
2.6 cat命令
cat命令用来查看文件内容。这个命令的基本信息如下。
- 命令名称:cat。
- 英文原意:concatenate files and print on the standard output。
- 所在路径:/bin/cat。
- 执行权限:所有用户。
**功能描述:**合并文件并打印输出到标准输出
[root@localhost ~]# cat [选项] [文件名]
选项:
-A: 相当于-vET选项的整合,用于列出所有隐藏符号
-E: 列出每行结尾的回车符$
-n: 显示行号
-T: 把Tab键用^I显示出来
-v: 列出特殊字符
示例:
[root@localhost ~]# cat -An anaconda-ks.cfg
1 #version=DEVEL$
2 # System authorization information$
3 auth --enableshadow --passalgo=sha512$
4 # Use CDROM installation media$
5 cdrom$
6 # Use graphical install$
7 graphical$
8 # Run the Setup Agent on first boot$
9 firstboot --enable$
10 ignoredisk --only-use=sda$
11 # Keyboard layouts$
12 keyboard --vckeymap=us --xlayouts='us'$
13 # System language$
2.7 more命令
more是分屏显示文件的命令,其基本信息如下。
- 命令名称:more。
- 英文原意:file perusal filter for crt viewin。
- 所在路径:/bin/more。
- 执行权限:所有用户。
**功能描述:**分屏显示文件内容。
[root@localhost ~]# more [文件名]
more命令比较简单,一般不用什么选项,命令会打开一个交互界面,可以识别一些交互命令。常用的交互命令如下
空格键:向下翻页。
b:向上翻页。
回车键:向下滚动一行。
/字符串:搜索指定的字符串。
q:退出。
示例:
[root@localhost ~]# more anaconda-ks.cfg
2.8 less命令
less命令和more命令类似,只是more是分屏显示命令,而less是分行显示命令,其基本信息如下。
- 命令名称:less。
- 英文原意:opposite of more。
- 所在路径:/usr/bin/less。
- 执行权限:所有用户。
**功能描述:**分行显示文件内容
[root@localhost ~]# less [文件名]
less命令比较简单,一般不用什么选项,命令会打开一个交互界面,可以识别一些交互命令。常用的交互命令如下
空格键:向下翻页。
b:向上翻页。
回车键:向下滚动一行。
/字符串:搜索指定的字符串。
q:退出。
示例:
[root@localhost ~]# less anaconda-ks.cfg
2.9 head命令
head是用来显示文件开头的命令,其基本信息如下。
- 命令名称:head。
- 英文原意:output the first part of files。
- 所在路径:/usr/bin/head。
- 执行权限:所有用户。
**功能描述:**显示文件开头的内容。
[root@localhost ~]# head [选项] [文件名]
选项:
-n 行数: 从文件头开始,显示指定行数
-v: 显示文件名
示例:
[root@node-1 ~]# head -n 5 anaconda-ks.cfg
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
2.10 tail命令
既然有显示文件开头的命令,就会有显示文件结尾的命令。tail命令的基本信息如下。
- 命令名称:tail。
- 英文原意:output the last part of files。
- 所在路径:/usr/bin/tail。
- 执行权限:所有用户。
**功能描述:**显示文件结尾的内容。
[root@localhost ~]# tail [选项] [文件名]
选项:
-n 行数: 从文件结尾开始,显示指定行数
-f: 监听文件的新增内容
示例:
[root@localhost ~]# tail -n 5 anaconda-ks.cfg
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
2.11 ln命令
建立软连接和硬连接指令
- 命令名称:ln。
- 英文原意:make links between file。
- 所在路径:/bin/ln。
- 执行权限:所有用户。
**功能描述:**在文件之间建立链接。
[root@localhost ~]# ln [选项] 源文件目标文件
选项:
-s: 建立软链接文件。如果不加“-s”选项,则建立硬链接文件
-f: 强制。如果目标文件已经存在,则删除目标文件后再建立链接文件
示例:
创建硬链接:
[root@localhost ~]# touch cangls
[root@localhost ~]# ln /root/cangls /tmp/
创建软链接:
[root@localhost ~]# touch bols
[root@localhost ~]# ln -s /root/bols /tmp/