目录
一、前言
作为一名软件系统运维人员,其日常工作中打交道最多的是软件系统和部署软件系统的服务器,而绝大数的服务器安装的是Linux操作系统。故而掌握一些常用的Linux操作系统的命令,会让其日常工作变得得心应手,同时也会大大提高其工作效率。作为一名合格的软件系统运维人员更应该掌握一些核心的Linux操作系统的命令,尤其是与软件系统运维有关的命令,只有掌握了这些命令后,无论是对工作还是能力都会有很大提升。
二、Linux命令大全
2.1 目录及文件类操作命令
2.1.1 pwd命令
【基本语法】:pwd
【功能描述】:显示当前工作目录的绝对路径
【示例】:
2.1.2 ls命令
【基本语法】:ls [选项] [目录或是文件]
【功能描述】:列出目录的内容
【选项说明】:
选项 | 说明 |
---|---|
-a | 全部文件,连同隐藏文件(开头为.的文件)一起列出来(常用) |
-l | 长数据串列出,包含文件的属性与权限等数据(常用),等价于ll命令 |
目录参数非必须 | 命令后面的目录可以省略,省略时,查看的是当前目录 |
【显示说明】:
每行出的信息依次是:
- 文件类型与权限
- 连接数
- 文件属主
- 文件属组
- 文件大小(byte)
- 创建或最近修改的时间
- 名字
【示例】:
(1)查看当前目录所有的内容信息
(2)查看目录/usr的文件信息
2.1.3 cd命令
【基本语法】:cd [参数]
【功能描述】:切换到指定目录
【参数详解】:
参数 | 功能 |
---|---|
具体目录路径 | cd /mnt/server |
cd 绝对路径 | 切换路径 |
cd 相对路径 | 切换路径 |
cd ~或cd | 回到自己的家目录 |
cd - | 回到上一次所在目录,可以用来在2个目录来回跳转 |
cd … | 回到当前目录的上一级目录 |
cd -P | 跳转到实际物理路径,而非快捷方式路径 |
【示例】:
(1)使用绝对路径切换到/usr/local目录
(2)使用相对路径切换到“公共的”目录
如下,当前在/root目录,我们想到root目录下面的 桌面 目录,那么可以直接使用 cd 桌面 即可,这种情况下使用相对路径更方便,相对路径是相对于当前目录来说的。
(3)回到当前用户自己的家目录
如下,当前是root用户,目前在 /usr/local 目录,执行cd直接回到了root用户自己的目录,即 /root 目录。
(4)cd - 回到上一次所在目录
如下,下面命令,先通过cd跳到/usr/local目录,然后又通过cd跳到/root目录,执行cd - 回到上一次所在的目录,即/usr/local目录,多次执行cd -,可以在两个目录之间来回切换,还是很实用的一个命令。
(5)cd …回到上一级目录
下面命令,从/usr/local目录通过cd …回到上一级目录,即/usr目录 。
2.1.4 mkdir命令
【基本语法】:mkdir [选项] 要创建的目录
【功能描述】:创建一个新的目录
【选项说明】:
选项 | 说明 |
---|---|
-p | 创建多层目录 |
【示例】:
(1)创建一个目录test
(2)创建多级目录
递归创建多级目录需要加-p选项,否则,父目录不存在时会报错。
2.1.5 rmdir命令
【基本语法】:rmdir 要删除的空目录
【功能描述】:删除一个空目录
【示例】:
(1)删除一个空目录
(2)删除非空目录会失败
2.1.6 touch命令
【基本语法】:touch 文件名称
【功能描述】:创建空文件
【示例】:
(1)当前目录创建1.txt文件
2.1.7 cp命令
【基本语法】:cp [选项] source dest
【功能描述】:复制文件或目录
【选项说明】:
选项 | 说明 |
---|---|
-r | 递归复制整个文件夹 |
【参数说明】:
参数 | 说明 |
---|---|
source | 源文件 |
dest | 目标文件 |
【经验技巧】:强制覆盖不提示的方法: \cp ,因为cp命令是 cp -i 的别名, -i 选项的作用是当出现文件覆盖的时候 需要提示用户选择是否覆盖,这也是为了安全起见,而 \命令 可以按照命令原始的方式运行。
【示例】:
(1)复制文件
(2)递归复制整个文件夹
(3)\cp:复制,覆盖不提示
2.1.8 rm命令
【基本语法】:rm [选项] 文件1 文件2 [文件N…]
【功能描述】:删除文件或目录
【选项说明】:
选项 | 说明 |
---|---|
-r | 递归删除目录中所有内容 |
-f | 强制执行删除操作,不会提示用户是否确认删除 |
-v | 显示命令的详细执行过程 |
【示例】:
(1)删某个文件
(2)递归删除目录所有内容
(3)删除多个文件,且输出提示信息
(4)*通配符删除
rm -rf /*
:此命令慎用,否则永无回头之日。
2.1.9 mv命令
【基本语法】:mv oldNameFile newNameFile(重命名文件)
mv /temp/movefile /targetFolder (移动文件)
【功能描述】:移动文件与目录或重命名
【案例】:
(1)重命名
(2)移动文件
(3)mv a b
- 若a和b都是目录,b不存在时,相当于把a目录命令为b目录
- 若a和b都是目录,b存在的时,相当于把a目录移动到b目录中
2.1.10 cat命令
【基本语法】:cat [选项] 要查看的文件
【功能描述】:查看文件内容
【选项说明】:
选项 | 说明 |
---|---|
-n | 显示所有行的行号,也包含空行 |
【经验技巧】:一般查看比较小的文件,一屏幕能显示全的。
【案例】:
2.1.11 more命令
适合查看内容超过一个屏幕的文件,支持上下翻页查看文件内容。
more命令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,more命令中内置了若快捷键,详见操作说明。
【基本语法】:more 要查看的文件
【功能描述】:文件内容分屏查看器
【操作说明】:
操作 | 说明 |
---|---|
空白键(space) | 向下翻一页 |
b | 向上翻一页 |
Enter | 向下翻【一行】 |
q | 代表立刻离开more,不再显示该文件内容 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
【示例】:
2.1.12 less命令
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端,less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要去加载的内容,对于显示大型文件具有较高的效率。
【基本语法】:less 需要查看的文件
【功能描述】:分屏显示文件内容
【操作说明】:
操作 | 说明 |
---|---|
空白键(space) | 向下翻动一页 |
[pagedown] 或 f | 上下翻动一页 |
[pageup] 或 b | 向上翻动一页 |
/字符串 | 向下搜寻【字符串】的功能;n:向下查找;N:向上查找 |
?字符串 | 向上搜索【字符串】的功能,n:向上查找,N:向下查找 |
q | 离开less这个程序 |
【经验技巧】:
用SecureCRT时候[pagedown]和[pageup]可能会出现无法识别的问题。
【示例】:
2.1.13 echo命令
【基本语法】:echo [选项] [输出内容]
【功能描述】:输出内容到控制台
【选项说明】:
控制字符 | 作用 |
---|---|
\\· | 输出\本身 |
\n | 换行符 |
\t | 制表符,也就是Tab键 |
【示例】:
2.1.14 head命令
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。
【基本语法】:head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
【功能描述】:显示文件头部内容
【选项说明】:
选项 | 功能 |
---|---|
-n 行数 | 指定显示头部内容的行数 |
【示例】:
2.1.15 tail命令
tail用于输出文件中尾部的内容,默认情况下tail指令显示文件后10行内容。
还可以用来实时监控文件的变更。
【基本语法】:
语法 | 说明 |
---|---|
tail 文件 | 查看文件尾部10行内容 |
tail -n 5 文件 | 查看文件尾部5行内容,5可以是任意行数 |
tail -f 文件 | 实时追踪该文档的所有更新 |
【功能描述】:输出文件尾部内容
【示例】:
(1)查看1.txt文件末尾1行内容
(2)实时追踪1.txt的内容,当有更新的时候,当前屏幕会自动输出所有的更新,通常用来查看日志文件变化,非常有用
2.1.16 >与>>命令
>是输出重定向命令,>>是追加命令。
【基本语法】:
语法 | 说明 |
---|---|
ls -l > 目标文件 | 将ls -l命令的结果写入到目标文件中(会覆盖目标文件内容) |
ls -al >> 目标文件 | 将ls -al命令的结果追加到目标文件中 |
cat 文件1 > 文件2 | 将文件1的内容覆盖到文件2中 |
echo “内容” >> 目标文件 | 将一段文字追加到目标文件 |
【示例】:
(1)将 ll命令结果 结果写入到1.txt文件
(2)将 ls命令结果 追加到1.txt文件
(3)采用echo将hello单词追加到1.txt中
2.1.17 ln命令
ln命令是创建软连接,软连接也称为符号链接,类似于windows里的快捷方式,有自己的数据块,主要存放了连接其他文件的路径。
【基本语法】:ln -s [源文件或目录] [软连接名称]
【功能描述】:创建软连接
【使用经验】:
删除软连接:rm -rf 软连接名称,而不是 rm -rf 软连接名称/
如果使用rm -rf 软连接名/ 删除,会把软连接对应的真实目录下内容删除。
查询:通过ll就可以查看,列表属性第1位是1,尾部会有位置指向。
【示例】:
(1)创建软连接
在/tmp目录创建一个快捷方式desktop,指向/root/桌面
(2)cd -P:进入软连接实际物理路径
2.1.18 history命令
【基本语法】:history
【功能描述】:查看已执行过的历史命令
【示例】:
(1)查看已执行过的命令
history可以查看已执行过的历史命令,返回的结果:命令编号 命令
(2) !命令编号 ,可以执行对应编号的命令
上面编号为5对应的命令是 mkdir 123 ,那么我们可以使用 !5 再次把 mkdir 123 命令执行一遍
(3)history n:查看最近的n行历史命令
(4)history -c:清除命令历史记录
如果我们不想让别人看到命令的历史记录,可以使用history -c来清除命令记录。
2.1.19 tree命令
tree命令在系统中默认是不存在的,所以使用前需要先安装,然后才可以使用。
【安装】:执行下面命令进行安装,过程中提示输入的地方输入y就可以
【基本语法】:tree [选项] [目录]
树形显示目录中的文件。
目录可以省略,默认为当前目录
【功能描述】:树形显示目录所有文件
【选项参数】:
选项 | 功能 |
---|---|
-h | 以人容易理解的方式显示文件大小(GBytes、MBytes、KBytes) |
-L n | n用来指定显示的树的深度 |
【示例】: