一、命令的基本格式
1. 命令的符号
[root@localhost ~]#
-
[]:这是提示符的分隔符号,没有特殊含义。
-
root:显示的是当前的登录用户。
-
@:分隔符号,没有特殊含义。
-
localhost:当前系统的简写主机名(完整主机名是 localhost.localdomain)。
-
~:代表用户当前所在的目录,此例中用户当前所在的目录是家目录。
-
#:命令提示符。超级用户是#,普通用户是$
2. 命令的基本格式
[root@localhost ~]# 命令 [选项] [参数]
ls 是最常见的目录操作命令,主要作用是显示目录下的内容。
-
命令名称:ls。
-
英文原意:list。
-
所在路径:/bin/ls。
-
执行权限:所有用户。
-
功能描述:显示目录下的内容。
[root@localhost ~]#ls [选项] [文件名或目录名]
选项:
-a: | 显示所有文件 |
--color=when: | 支持颜色输出,when 的值默认是 always(总显示颜色),也可以是never(从不显示颜色)和 auto(自动) |
-d: | 显示目录信息,而不是目录下的文件 |
-h: | 人性化显示,按照我们习惯的单位显示文件大小(KB、M) |
-i: | 显示文件的 i 节点号 |
-l: | 长格式显示( 显示文件的详细信息) |
例子(文件详细信息):[root@localhost ~]# ls-l
1 | 2 | 3 | 4 | 5 | 6 | 7 |
-rw-------. | 1 | root | root | 1207 | 1 月 14 18:18 | anaconda-ks.cfg |
#权限 | 引用计数 | 所有者 | 所属组 | 大小 | 文件修改时间 | 文件名 |
-
第一列:权限。
-
第二列:引用计数。文件的引用计数代表该文件的硬链接个数,而目录的引用计数代表该目录有多少个一级子目录。
-
第三列:所有者。也就是这个文件属于哪个用户。默认所有者是文件的建立用户
-
第四列:所属组。默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组。
-
第五列:大小。默认单位是字节。
-
第六列:文件修改时间。文件状态修改时间或文件数据修改时间都会更改这个时间,注意这个时间不是文件的创建时间。
-
第七列:文件名。
选项:是用于调整命令的功能的。参数:是命令的操作对象,如果省略参数,是因为有默认参数
二、目录操作命令
1.0 cd 命令
cd 是切换所在目录的命令,这个命令的基本信息如下。
-
命令名称:cd。
-
英文原意:change directory。
-
所在路径:Shell 内置命令。
-
执行权限:所有用户。
-
功能描述:切换所在目录。
2.0 cd 命令的简化用法
特殊符号 | 作 用 |
~ | 代表用户的家目录 |
- | 代表上次所在目录 |
. | 代表当前目录 |
.. | 代表上级目录 |
2.1 绝对路径和相对路径
绝对路径:以根目录为参照物,从根目录开始,一级一级进入目录
相对路径:以当前目录作为参照物,进行目录查找。
3.pwd 命令
pwd 命令是查询所在目录的命令,基本信息如下:
-
命令名称:pwd
-
英文原意:print name of current/working directory
-
所在路径:/bin/pwd
-
执行权限:所有用户。
-
功能描述:查询所在的工作目录。
4.mkdir 命令
mkdir 是创建目录的命令,其基本信息如下。
-
命令名称:mkdir。
-
英文原意:make directories。
-
所在路径:/bin/mkdir。
-
执行权限:所有用户。
-
功能描述:创建空目录。假如已经存在一个文件名为A的文件,这是就不能创建名为A的目录,任何操作系统中,不能同时存在同名目录和同名文件。
命令格式:[root@localhost ~]# mkdir [选项] 目录名
选项:
-p: 递归建立所需目录行。也就是创建连续目录,例如123/456/789,目录下还有目录。
5.mkdir 命令
既然有建立目录的命令,就一定会有删除目录的命令 rmdir,基本信息如下。
-
命令名称:rmdir。
-
英文原意:remove empty directories。
-
所在路径:/bin/rmdir。
-
执行权限:所有用户。
-
功能描述:删除空目录。
命令格式:[root@localhost ~]# rmdir [选项] 目录名
选项:
-p: 递归删除目录。
rmdir 命令的作用十分有限,因为只能删除空目录,所以一旦目录中有内容,就会报错。这个命令比较“笨”,所以我们不太常用。不论删除的是文件还是目录,都会使用 rm命令。
[root@localhost ~]# rm -rf 123
f(force)是强制的意思,执行一遍就会删除,不会再询问是否删除,没有f就会再次询问是否删除。
三、文件操作命令
1.touch 命令
创建空文件或修改文件时间,这个命令的基本信息如下。
-
命令名称:touch。
-
英文原意:change file timestamps。
-
所在路径:/bin/touch。
-
执行权限:所有用户。
-
功能描述:修改文件的时间戳,如果空文件已存在,执行这条命令只是修改了文件时间。
2.stat 命令
stat 是查看文件详细信息的命令,而且可以看到文件的这三个时间,其基本信息如下。
-
命令名称:stat。
-
英文原意:display file or file system status。
-
所在路径:/usr/bin/stat。
-
执行权限:所有用户。
-
功能描述:显示文件或文件系统的详细信息。
[root@localhost ~]# stat anaconda-ks.cfg
文件:"anaconda-ks.cfg"
大小:1453 块:8
IO 块:4096
硬链接:1
普通文件
设备:803h/2051d Inode:33574991
权限:(0600/-rw-------) Uid:(0/root)Gid:(0/ root)
环境:system_u:object_r:admin_home_t:s0
最近访问:2018-11-06 23:22:23.409038121 +0800
最近更改:2018-10-24 00:53:08.760018638 +0800 #数据修改时间
最近改动:2018-10-24 00:53:08.760018638 +0800 #状态修改时间
创建时间:-
3.cat 命令
cat 命令用来查看文件内容。这个命令的基本信息如下。
-
命令名称:cat。
-
英文原意:concatenate files and print on the standard output。
-
所在路径:/bin/cat。
-
执行权限:所有用户。
-
功能描述:合并文件并打印输出到标准输出。但是不方便查看大文件,会出现显示不全的现象。
命令格式:[root@localhost ~]# cat [选项] 文件名
选项:
-A:相当于-vET 选项的整合,用于列出所有隐藏符号
-E:列出每行结尾的回车符$
-n:显示行号
-T:把 Tab 键用^I 显示出来
-v:列出特殊字符
4.more 命令
more 是分屏显示文件的命令,其基本信息如下。
-
命令名称:more。
-
英文原意:file perusal filter for crt viewin。
-
所在路径:/bin/more。
-
执行权限:所有用户。
-
功能描述:分屏显示文件内容,完善了cat 命令的不足。
more 命令比较简单,一般不用什么选项,命令会打开一个交互界面,可以识别一些交互命令。常用的交互命令如下。
-
空格键:向下翻页。
-
b:向上翻页。
-
回车键:向下滚动一行。
-
/字符串:搜索指定的字符串。
-
q:退出。
5.less 命令
less 命令和 more 命令类似,只是 more 是分屏显示命令,而 less 是分行显示命令,其基本信息如 下。
-
命令名称:less。
-
英文原意:opposite of more。
-
所在路径:/usr/bin/less。
-
功能描述:分行显示文件内容。
6.head 命令
head 是用来显示文件开头的命令,其基本信息如下。
-
命令名称:head。
-
英文原意:output the first part of files。
-
所在路径:/usr/bin/head。
-
执行权限:所有用户。
-
功能描述:显示文件开头的内容,默认显示文件的头部10行内容。
命令格式:[root@localhost ~]# head [选项] 文件名
选项:
-n 行数: 从文件头开始,显示指定行数
-v: 显示文件名
7.tail 命令
既然有显示文件开头的命令,就会有显示文件结尾的命令。tail 命令的基本信息如下:
-
命令名称:tail。
-
英文原意:output the last part of files。
-
所在路径:/usr/bin/tail。
-
执行权限:所有用户。
-
功能描述:显示文件结尾的内容,默认显示文件的尾部10行内容,可用-n来指定显示的行数。监听文件就是输完命令后不会退出,而是一直在监听,如果此时修改了该文件,则会同步显示你修改的操作,可以按ctrl+c强行退出。
命令格式:[root@localhost ~]# tail [选项] 文件名
选项:
-n 行数: 从文件结尾开始,显示指定行数
-f: 监听文件的新增内容