—————————————————————————————
云计算 Linux+Python 自动化课程系列
第四章:常用命令
尚硅谷云计算 Linux 课程
版本:V1.0
讲师:沈超
一 命令的基本格式
1. 命令的提示符
[root@localhost ~]#
[]:这是提示符的分隔符号,没有特殊含义。
root:显示的是当前的登录用户,超哥现在使用的是 root 用户登录。
@:分隔符号,没有特殊含义。
localhost:当前系统的简写主机名(完整主机名是 localhost.localdomain)。
~:代表用户当前所在的目录,此例中用户当前所在的目录是家目录。
#:命令提示符。超级用户是#,普通用户是$
2. 命令的基本格式
[root@localhost ~]# 命令 [选项] [参数]
ls 是最常见的目录操作命令,主要作用是显示目录下的内容。
命令名称:ls。
英文原意:list。
所在路径:/bin/ls。
执行权限:所有用户。
功能描述:显示目录下的内容。
显示所有文件
[root@localhost ~]#ls [选项] [文件名或目录名]
选项:
-a:
--color=when: 支持颜色输出,when 的值默认是 always(总显示颜色),也可以是
-d:
-h:
-i:
-l:
显示目录信息,而不是目录下的文件
人性化显示,按照我们习惯的单位显示文件大小
显示文件的 i 节点号
长格式显示
never(从不显示颜色)和 auto(自动)
举几个例子:
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
云计算 Linux+Python 自动化课程系列
—————————————————————————————
[root@localhost ~]# ls -l
总用量 44
-rw-------. 1 root root 1207 1 月 14 18:18 anaconda-ks.cfg
#权限 引用计数 所有者 所属组 大小 文件修改时间 文件名
我们已经知道“-l”选项用于显示文件的详细信息,那么“-l”选项显示的这 7 列分别是什么含义?
第一列:权限。具体权限的含义将在 4.5 节中讲解。
第二列:引用计数。文件的引用计数代表该文件的硬链接个数,而目录的引用计数代表该目录
有多少个一级子目录。
第三列:所有者,也就是这个文件属于哪个用户。默认所有者是文件的建立用户
第四列:所属组。默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组。
第五列:大小。默认单位是字节。
第六列:文件修改时间。文件状态修改时间或文件数据修改时间都会更改这个时间,注意这个
时间不是文件的创建时间。
第七列:文件名。
选项:是用于调整命令的功能的。
参数:是命令的操作对象,如果省略参数,是因为有默认参数
二 目录操作命令
1.ls 命令
见前一小节的内容。
2. cd 命令
cd 是切换所在目录的命令,这个命令的基本信息如下。
命令名称:cd。
英文原意:change directory。
所在路径:Shell 内置命令。
执行权限:所有用户。
功能描述:切换所在目录。
2.1 cd 命令的简化用法
特殊符号
作 用
~
-
.
..
代表用户的家目录
代表上次所在目录
代表当前目录
代表上级目录
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
云计算 Linux+Python 自动化课程系列
—————————————————————————————
2.2 绝对路径和相对路径
绝对路径:以跟目录为参照物,从根目录开始,一级一级进入目录
相对路径:以当前目录作为参照物,进行目录查找
3.pwd 命令
pwd 命令是查询所在目录的命令,基本信息如下:
命令名称:pwd
英文原意:print name of current/working directory
所在路径:/bin/pwd
执行权限:所有用户。
功能描述:查询所在的工作目录。
4.mkdir 命令
mkdir 是创建目录的命令,其基本信息如下。
命令名称:mkdir。
英文原意:make directories。
所在路径:/bin/mkdir。
执行权限:所有用户。
功能描述:创建空目录。
命令格式
[root@localhost ~]# mkdir [选项] 目录名
选项:
-p: 递归建立所需目录
行。
5.rmdir 命令
既然有建立目录的命令,就一定会有删除目录的命令 rmdir,其基本信息如下。
命令名称:rmdir。
英文原意:remove empty directories。
所在路径:/bin/rmdir。
执行权限:所有用户。
功能描述:删除空目录。
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
—————————————————————————————
云计算 Linux+Python 自动化课程系列
命令格式
[root@localhost ~]# rmdir [选项] 目录名
选项:
-p: 递归删除目录
rmdir 命令的作用十分有限,因为只能删除空目录,所以一旦目录中有内容,就会报错。
这个命令比较“笨”,所以我们不太常用。后续我们不论删除的是文件还是目录,都会使用 rm
命令
三 文件操作命令
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 普通文件
设备:803h/2051d Inode:33574991 硬链接:1
权限:(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
创建时间:-
#数据修改时间
#状态修改时间
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
云计算 Linux+Python 自动化课程系列
—————————————————————————————
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。
执行权限:所有用户。
功能描述:分屏显示文件内容。
more 命令比较简单,一般不用什么选项,命令会打开一个交互界面,可以识别一些交互命令。常
用的交互命令如下。
空格键:向下翻页。
b:向上翻页。
回车键:向下滚动一行。
/字符串:搜索指定的字符串。
q:退出。
5.less 命令
less 命令和 more 命令类似,只是 more 是分屏显示命令,而 less 是分行显示命令,其基本信息如
下。
命令名称:less。
英文原意:opposite of more。
所在路径:/usr/bin/less。
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
—————————————————————————————
云计算 Linux+Python 自动化课程系列
执行权限:所有用户。
功能描述:分行显示文件内容
6.head 命令
head 是用来显示文件开头的命令,其基本信息如下。
命令名称:head。
英文原意:output the first part of files。
所在路径:/usr/bin/head。
执行权限:所有用户。
功能描述:显示文件开头的内容。
1.命令格式
-n 行数: 从文件头开始,显示指定行数
-v:
[root@localhost ~]# head [选项] 文件名
选项:
7.tail 命令
显示文件名
既然有显示文件开头的命令,就会有显示文件结尾的命令。tail 命令的基本信息如下。
命令名称:tail。
英文原意:output the last part of files。
所在路径:/usr/bin/tail。
执行权限:所有用户。
功能描述:显示文件结尾的内容。
命令格式
[root@localhost ~]# tail [选项] 文件名
选项:
8.ln 命令
-n 行数: 从文件结尾开始,显示指定行数
-f:
监听文件的新增内容
我们来看看 ln 命令的基本信息。
命令名称:ln。
英文原意:make links between file。
所在路径:/bin/ln。
执行权限:所有用户。
功能描述:在文件之间建立链接。
8.1
ln 命令的基本格式如下:
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
云计算 Linux+Python 自动化课程系列
—————————————————————————————
[root@localhost ~]# ln [选项] 源文件 目标文件
选项:
-s: 建立软链接文件。如果不加“-s”选项,则建立硬链接文件
-f: 强制。如果目标文件已经存在,则删除目标文件后再建立链接文件
如果创建硬链接:
[root@localhost ~]# touch cangls
[root@localhost ~]# ln /root/cangls /tmp/
#建立硬链接文件,目标文件没有写文件名,会和原名一致
#也就是/root/cangls和/tmp/cangls是硬链接文件
如果创建软链接:
[root@localhost ~]# touch bols
[root@localhost ~]# ln -s /root/bols /tmp/
#建立软链接文件
硬链接特征:
8.2 硬链接与软连接的特征
源文件和硬链接文件拥有相同的 Inode 和 Block
修改任意一个文件,另一个都改变
删除任意一个文件,另一个都能使用
硬链接标记不清,很难确认硬链接文件位置,不建议使用
硬链接不能链接目录
硬链接不能跨分区
软链接特征:
软链接和源文件拥有不同的 Inode 和 Block
两个文件修改任意一个,另一个都改变
删除软链接,源文件不受影响;删除源文件,软链接不能使用
软链接没有实际数据,只保存源文件的 Inode,不论源文件多大,软链接大小不变
软链接的权限是最大权限 lrwxrwxrwx.,但是由于没有实际数据,最终访问时需要参考源文
件权限
软链接可以链接目录
软链接可以跨分区
软链接特征明显,建议使用软连接
四 目录和文件都能操作的命令
1.rm 命令
rm 是强大的删除命令,不仅可以删除文件,也可以删除目录。这个命令的基本信息如下。
命令名称:rm。
英文原意:remove files or directories。
所在路径:/bin/rm。
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
—————————————————————————————
云计算 Linux+Python 自动化课程系列
执行权限:所有用户。
功能描述:删除文件或目录。
命令格式
[root@localhost ~]# rm [选项] 文件或目录
选项:
-f: 强制删除(force)
-i: 交互删除,在删除之前会询问用户
-r: 递归删除,可以删除目录(recursive)
2.cp 命令
cp 是用于复制的命令,其基本信息如下:
命令名称:cp。
英文原意:copy files and directories。
所在路径:/bin/cp。
执行权限:所有用户。
功能描述:复制文件和目录。
命令格式
[root@localhost ~]# cp [选项] 源文件 目标文件
选项:
-a: 相当于-dpr 选项的集合,这几个选项我们一一介绍
-d: 如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接
-i: 询问,如果目标文件已经存在,则会询问是否覆盖
-p: 复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间)
-r: 递归复制,用于复制目录
3.mv 命令
mv 是用来剪切的命令,其基本信息如下。
命令名称:mv。
英文原意:move (rename) files。
所在路径:/bin/mv。
执行权限:所有用户。
功能描述:移动文件或改名。
命令格式
[root@localhost ~]# mv [选项] 源文件 目标文件
选项:
-f: 强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖
-i: 交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项)
-v: 显示详细信息
更多云计算-Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网