前言
最近项目在不断地更新迭代,项目部署也由笔者来做了。由于笔者不是专业的Linux服务器运维人员,所以好多用到的命令都是现查现用。这里汇总一下笔者目前自己用的命令,方便今后查阅。
当然随着部署工作的不断进行,笔者也会陆续更新学习到的内容。
常用命令
删除目录或文件
rm -rf <目录或文件>
选项f表示强制删除,注意使用。
解压缩zip压缩包
unzip <zip文件位置>
默认解压到zip所在位置。笔者上传部署项目至服务器上时,习惯打包为zip。
重命名目录或文件名
cd <目录或文件位置> mv <目录或文件> ./<新名称>
查看指定名称的程序进程
ps aux | grep <模糊名称>
查看指定端口号的占用情况
netstat -tlnp | grep <端口号>
可运行jar包的执行
nohup java -jar <jar包位置> > /dev/null 2>&1 &
>/dev/null表示运行jar时控制台输出重定向到null中,就是控制台不显示信息。
&表示程序作为后台进程运行,这样即使关闭控制终端,程序依然在运行不会终止。
运行jar时可能需要配置内存,运行如下命令:
nohup java -Xmx1024m -Xms1024m -jar <jar包位置> > /dev/null 2>&1 &
查看程序内存占用的排行信息
ps -eo RSS,pmem,pcpu,vsize,args | sort -k 1 -r -n | less
- RSS: resident set size,表示进程占用RAM(内存)的大小,单位是KB
- pmem: %M,占用内存的百分比
- pcpu: %C,占用cpu的百分比
- vsize: 表示进程占用的虚拟内存的大小,KB
- args: 进程名(command)
sort命令对ps结果进行排序
-k 1: 按第一个参数 RSS进行排序
-r: 逆序
-n: numeric,按数字来排序
Redis模糊匹配删除命令
由于Redis自身命令没有模糊匹配删除的功能,这里需要借助Linux命令的功能。
redis-cli KEYS "*xxx*" | xargs redis-cli DEL
如果Redis需要密码的话,则需要加上"-a"选项执行命令。
redis-cli -a 111111 KEYS "*xxx*" | xargs redis-cli -a 111111 DEL
需要注意的是,如果模糊匹配到的key数量为0时,执行上述命令中的删除时会报错提示"ERR wrong number of arguments for 'del' command"。介意这个报错的话,可以将命令调整一下。
redis-cli -a 111111 KEYS "*xxx*" | xargs -i redis-cli -a 111111 DEL {}