以下命令都是在使用Linux类系统中经常使用到的小命令,我记性很差,记录下来方便往后查询,这篇文章不按期更新上一些新命令,喜欢的能够关注。分类是根据我本身的喜爱\经验来分类的,可能和别人的分类方式略有不一样。css
使用这类命令,通常须要root权限;html
init 0 # 关机 init 6 # 重启 reboot #重启
# vmstat [refresh delay] [refresh frequency] vmstat 1 3 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 2 0 0 2298560 201728 748024 0 0 2 1 29 23 0 0 100 0 0 0 0 0 2298428 201728 748024 0 0 0 0 266 270 0 0 100 0 0 0 0 0 2298428 201728 748024 0 0 0 0 247 236 0 0 100 0 0
# free total used free shared buff/cache available Mem: 4037772 789260 2298740 22276 949772 2952424 Swap: 2094076 0 2094076
用于持续观察日志文件变化。linux
使用案例:shell
# 语法 tail -f /log_name_path # Ctrl + C is quit # 只展现和关键字相关的日志记录 tail -f /log_name_path* | grep 关键字 # 查看非权限内的日志 + sudo sudo tail -f /var/log/cron
单词速记 zipper 是拉链,拉上拉链不就是要打包文件吗。un 有否认含义的前缀,upzipper是解开了拉链,不就是要把包好东西都倒出来吗。安全
# 压缩并指定目录 zip -r /home/kms/kms.zip /home/kms/server/kms # 解压并指定目录 unzip /home/kms/kms.zip -d /home/kms/server/kms
传输文件夹,感受配置方式太麻烦,容易被防火墙或者安全规则阻挡,报超时错误。建议使用lrzszbash
$scp -r /tmp root@88.88.88.88:/tmp/filename password:
参考:https://www.linuxrumen.com/cyml/251.htmlide
// 首先安装lrzsz # yum -y install lrzsz // 上传文件,执行命令rz,会跳出文件选择窗口,选择好文件,点击确认便可。 # rz # rz -be //传输二进制文件时 // 下载文件,执行命令sz # sz
通常用于组合其余命令来使用;函数
若是有需求是在Linux终端下进行代码审计时,系统也没有ide工具,想要搜索在项目目录内,那些文件里面写了调用过当前函数、变量的字符。工具
grep -in "函数/变量" -r ./home/my/www/cms -i 在进行比较时忽略字母的大小写。 -n 在每一行以前放置文件中相关的行号。每一个文件的起始行号为 1,在处理每一个文件时,行计数器都将被复位。 - r 从什么目录路径开始搜索
简单来讲就是加强版的命令行,本来的命令行是不能使用正则匹配模式的,经过shopt可使用了。ui
shopt命令用于显示和设置shell中的行为选项,经过这些选项以加强shell易用性。
shopt命令若不带任何参数选项,则能够显示全部能够设置的shell操做选项。
案例:
# 语法 shopt -s extglob #开启shopt命令 shopt -u extglob #关闭shopt命令 # 开启以后 # 删除文件名不以jpg结尾的文件 rm -rf !(*jpg) # 删除文件名以jpg或png结尾的文件 rm -rf *@(jpg|png) # 删除当前文件夹下所有文件,除了css、js shopt -s extglob rm -rf !(css | js) shopt -u extglob
能匹配的5种模式:
?(pattern-list) - 所给模式匹配0次或1次
*(pattern-list) - 所给模式匹配0次以上包括0次
+(pattern-list) - 所给模式匹配1次以上包括1次
@(pattern-list) - 所给模式仅仅匹配1次
!(pattern-list) - 不匹配括号内的所给模式
zsh版的shell使用shopt时须要注意:
遇到以下报错时,
zsh: no matches found: !(js|css)
解决,
# 切换到bash: exec bash # 而后 source ~/.bashrc # 使用完shopt,能够在切换回zsh模式 exec zsh
由于zsh使用env配置文件~/.zshrc,而不是~/.bashrc,致使zsh没有这个功能。