2022最新!Linux命令汇总(三)
前文指路:
二、Linux命令大汇总
2.6 文件权限类
2.6.1 文件属性
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。
为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做 了不同的规定。
在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属的用户和组。
2.6.2 chmod 改变权限
第一种方式变更权限:
chmod [{ugoa}{+-=}{rwx}] 文件或目录
第二种方式变更权限:
chmod [mode=421 ] [文件或目录]
2.6.3 chown 改变所有者
chown [选项] [最终用户] [文件或目录] (功能描述:改变文件或者目录的所有者)。
2.6.4 chgrp 改变所属组
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)。
2.7 搜索查找类
2.7.1 find 查找文件或者目录
find [搜索范围] [选项]。
find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
2.7.2 locate 快速定位文件路径
locate 搜索文件。
locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给 定的文件。
Locate 指令无需遍历整个文件系统,查询速度较快。
为了保证查询结果的准确 度,管理员必须定期更新 locate 时刻。
2.7.3 grep 过滤查找及“|”管道符
grep 选项 查找内容 源文件。
管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
2.8 压缩和解压类
2.8.1 gzip/gunzip 压缩
gzip文件(功能描述:压缩文件,只能将文件压缩为*.gz 文件)。
gunzip文件.gz(功能描述:解压缩文件命令)。
2.8.2 zip/unzip 压缩
zip [选项] XXX.zip 将要压缩的内容 (功能描述:压缩文件和目录的命令)。
unzip [选项] XXX.zip (功能描述:解压缩文件)。
2.8.3 tar 打包
tar [选项] XXX.tar.gz 将要打包进去的内容 (功能描述:打包目录,压缩后的 文件格式.tar.gz)。
2.9 磁盘查看和分区类
2.9.1 du 查看文件和目录占用的磁盘空间
du 目录/文件(功能描述:显示目录下每个子目录的磁盘使用情况)。
2.9.2 df 查看磁盘空间使用情况
df 选项(功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况)。
2.9.3 lsblk 查看设备挂载情况
lsblk(功能描述:查看设备挂载情况)。
2.9.4 mount/umount 挂载/卸载
mount [-t vfstype] [-o options] device dir (功能描述:挂载设备)
umount 设备文件名或挂载点 (功能描述:卸载设备)。
2.9.5 fdisk 分区
fdisk -l(功能描述:查看磁盘分区详情)。
fdisk 硬盘设备名(功能描述:对新增硬盘进行分区操作)。
2.10 进程管理类
2.10.1 ps 查看当前系统进程状态
ps aux | grep xxx(功能描述:查看系统中所有进程)。
ps -ef | grep xxx(功能描述:可以查看子父进程之间的关系)。
2.10.2 kill 终止进程
kill [选项] 进程号(功能描述:通过进程号杀死进程)。
killall 进程名称(功能描述:通过进程名称杀死进程,也支持通配符,这 在系统因负载过大而变得很慢时很有用)。
2.10.3 pstree 查看进程树
pstree [选项]。
2.10.4 top 实时监控系统进程状态
top [选项]。
2.10.5 netstat 显示网络状态和端口占用信息
netstat -anp | grep 进程号(功能描述:查看该进程网络信息)。
netstat –nlp | grep 端口号(功能描述:查看网络端口号占用情况)。
2.11 crontab 系统定时任务
crontab [选项]。
三、编译器之神-vim
VI是Unix操作系统和类Unix 操作系统中最通用的文本编辑器。
VIM编辑器是从VI发展出来的一个性能更强大的文本编辑器。可以主动地以字体颜色辨别语法的正确性,方便程序设计。VIM与VI编辑器完全兼容。
3.1 一般模式
以 vi 打开一个档案就直接进入一般模式了(这是默认的模式)。
在这个模式中, 你可 以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档 案内容, 也可以使用『复制、粘贴』来处理你的文件数据。
语法 功能描述
yy 复制光标当前一行
y 数字 y 复制一段(从第几行到第几行)
p 箭头移动到目的行粘贴
u 撤销上一步
dd 删除光标当前行
d 数字 d 删除光标(含)后多少行
x 剪切一个字母,相当于 del
X 剪切一个字母,相当于 Backspace
yw 复制一个词
dw 删除一个词
shift+6(^) 移动到行头
shift+4 ($) 移动到行尾
1+shift+g 移动到页头,数字
shift+g 移动到页尾
数字+shift+g 移动到目标行
3.2 编辑模式
在一般模式中可以进行删除、复制、粘贴等的动作,但是却无法编辑文件内容的!
要等到你按下『i, I, o, O, a, A』等任何一个字母之后才会进入编辑模式。
注意了!通常在Linux中,按下这些按键时,在画面的左下方会出现『INSERT或 REPLACE』的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下 『Esc』这个按键即可退出编辑模式。
进入编辑模式:
按键 功能
i 当前光标前
a 当前光标后
o 当前光标行的下一行 I
A 光标所在行最后
O 当前光标行的上一行
按『Esc』键 退出编辑模式,之后所在的模式为一般模式。
3.3 指令模式
强制保存退出 :wq!
在一般模式当中,输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那一行。
在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、 离开 vi 、显示行号等动作是在此模式中达成的!
命令 功能
:w 保存
:q 退出
:! 强制执行
/ 要查找的词
n 查找下一个,N 往上查找
:noh 取消高亮显示
:set nu 显示行号
:set nonu 关闭行号
:%s/old/new/g 替换内容 /g 替换匹配到的所有内容
四、脚本之魂-shell
4.1 简介
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。
4.2 脚本格式
脚本以#!/bin/bash 开头(指定解析器)。
4.3 变量
4.3.1 系统预定义变量
常用系统变量 $HOME、$PWD、$SHELL、$USER 等。
4.3.2 自定义变量
基本语法:
定义变量:变量名=变量值,注意,=号前后不能有空格。
撤销变量:unset 变量名。
声明静态变量:readonly 变量,注意:不能 unset。
变量定义规则:
变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建 议大写。
等号两侧不能有空格。
在 bash 中,变量默认类型都是字符串类型,无法直接进行数值运算。
变量的值如果有空格,需要使用双引号或单引号括起来。
4.3.3 特殊变量
$n (功能描述:n 为数字,$0 代表该脚本名称,$1-9 代 表 第 一 到 第 九 个 参 数 , 十 以 上 的 参 数 , 十 以 上 的 参 数 需 要 用 大 括 号 包 含 , 如 9 代表第一到第九个参数,十以 上的参数,十以上的参数需要用大括号包含,如9代表第一到第九个参数,十以上的参数,十以上的参数需要用大括号包含,如{10})
$# (功能描述:获取所有输入参数个数,常用于循环,判断参数的个数是否正确以及 加强脚本的健壮性)。
$*(功能描述:这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体)
$@ (功能描述:这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待)
$?(功能描述:最后一次执行的命令的返回状态。如果这个变量的值为 0,证明上一 个命令正确执行;如果这个变量的值为非 0(具体是哪个数,由命令自己来决定),则证明 上一个命令执行不正确了。)
4.4 运算符
“$((运算式))” 或 “$[运算式]”
4.5 条件判断
test condition
[ condition ](注意 condition 前后要有空格)
注意:条件非空即为 true。
4.6 流程控制
4.6.1 if 判断
(1)单分支
if [ 条件判断式 ];then
程序
fi
或者
if [ 条件判断式 ]
then
程序
fi
(2)多分支
if [ 条件判断式 ]
then
程序
elif [ 条件判断式 ]
then
程序
else
程序
fi
4.6.2 case 语句
case $变量名 in
"值 1")
如果变量的值等于值 1,则执行程序 1
;;
"值 2")
如果变量的值等于值 2,则执行程序 2
;;
…省略其他分支…
*)
如果变量的值都不是以上的值,则执行此程序
;;
esac
4.6.3 for 循环
for (( 初始值;循环控制条件;变量变化 ))
do
程序
done
4.6.4 while 循环
while [ 条件判断式 ]
do
程序
done
4.7 read 读取控制台输入
read (选项) (参数)
4.8 函数
4.8.1 系统函数
basename:
basename [string / pathname] [suffix](功能描述:basename 命令会删掉所有的前 缀包括最后一个(‘/’)字符,然后将字符串显示出来)。
dirname:
dirname 文件绝对路径(功能描述:从给定的包含绝对路径的文件名中去除文件名 (非目录的部分),然后返回剩下的路径(目录的部分))。
4.8.2 自定义函数
[ ] funname[()]
{
Action; [return int;]
}
4.9 正则表达式
正则表达式使用单个字符串来描述、匹配一系列符合某个语法规则的字符串。
在很多文 本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。
在 Linux 中,grep, sed,awk 等文本处理工具都支持通过正则表达式进行模式匹配。
^ 匹配一行的开头。
$ 匹配一行的结束。
. 匹配一个任意的字符。
* 不单独使用,他和上一个字符连用,表示匹配上一个字符 0 次或多次。
[ ] 表示匹配某个范围内的一个字符
\ 表示转义,并不会单独使用。由于所有特殊字符都有其特定匹配模式,当我们想匹配 某一特殊字符本身时(例如,我想找出所有包含 ‘$’ 的行),就会碰到困难。此时我们就要 将转义字符和特殊字符连用,来表示特殊字符本身
推荐阅读
运维界升职加薪必备的云计算技术,你学了吗?
学完高级运维云计算课程之后,你可以:
跨越90%企业的招聘硬门槛
增加70%就业机会
拿下BAT全国TOP100大厂敲门砖
体系化得到运维技术硬实力
技术大佬年薪可达30w+
资源放送
2022新版Linux运维高级云计算-红帽RHCE实战课程合集,扫描下方二维码即可领取!
文章来源网络 侵删