linux 运用锦集
1. 生成快照:
命令:jmap -dump:format=b,file=yourself_file_name.hprof pid
实例:jmap -dump:format=b,file=2021-06-27-01.hprof 20945
2. 压缩成 zip 文件
命令:zip -r -q dest_file_name src_file_name (-r: 循环子文件夹及文件、-q 隐藏压缩过程)
实例:zip -r -q 2021-06-27-01.hprof.zip 2021-06-27-01.hprof
3. tar 解压缩 与 解压缩
命令:压缩 tar -cxvf file_name 、解压缩 tar -zxvf file_name
4. Grep 查询匹配行数:
命令:grep -c 'key' file_name.log
实例:grep -c '任务执行开始——' hm-info.log
扩展:
grep -A 100 'key' file_name.log 查询定位key行及其后100行;
grep -B 100 'key' file_name.log 之前;
grep -C 100 'key' file_name.log 前后各100行;
grep -n 'key' file_name.log 匹配字符'key' 并展示行号。
5. 查询时间区间内,指定关键字的匹配记录
命令:sed -n '/开始时间/,/结束时间/p' logfile[日志文件名]
① sed -n '/开始时间/,/结束时间/p' logfile[日志文件名] // 查询开始-结束时间 之间的日志行
② sed -n '/xxx/p' 表示输出 包含xxx的日志行
③ sed -n '/xxx\|yyy/p' 表示输出 包含xxx或包含yyy的日志行
实例:sed -n '/2021-04-28 21:08:22.311/,/2021-04-28 21:32:06.682/p' info-2021-04-28.log | grep 'ConsumeMessageThread_13'
6.查询进程pid
命令:ps -ef|grep key
实例:ps -ef|grep engine
7.统计值 wc -l:
(1) 查询指定进程内线程数
命令:pstree -p pid | wc -l
实例:pstree -p 28212 | wc -l
(2) 统计匹配记录数
命令:grep '关键字' filename | wc -l
实例:grep '返回值' info.log | wc -l
8.查询指定进程的线程的详细信息
命令:top -H -p pid
实例:top -H -p 28212
9.查看系统的实时负载, 包括进程、CPU负载、内存使用等等
命令:top 参考资源
10.分页查看日志 less info.log 参考资源: less命令 less 命令用法详解
(1)less +884 info.log 从884行开始 分页显示。
(2)q :退出
(3)Ctrl + G : 跳转最后一页
(4)Ctrl + B:上一页
(5)Ctrl + V:下一页
11.从服务器下载文件到本地:运行 sz filename,会将文件下载到windows本地
运行 rz,会将windows的文件传到linux服务器
(首先,服务器要安装了rz,sz
yum install lrzsz
当然你的本地windows主机也通过ssh连接了linux服务器)