linux-服务器维护常用命令
1. ps-查看进程
- -e 所有进程
- -f 全格式
例子:ps -ef 全格式显示当前所有进程
2. grep-文本搜索命令
- -i 忽略大小写
- -n 显示行号
例子:grep -ni 关键字 文件 在文件中忽略大小写搜索关键字,显示行号和内容
3. 管道符 |
A|B|C 将A命令原本输出到屏幕的输出流当作B命令的输入流
4. kill-向进程发送信号
- -9 强制结束某个进程
例子:kill -9 pid 结束进程号为pid的进程
5. tail- 查看文件最新部分
- -f 输出文件新增数据
- -n 行数
例子:tail -fn 200 文件 动态输出文件最后200行
综合例子1
知道上述几个命令以后就可以对服务器进行基本的操作了,现假设你需要重启一台正在运行的服务器,操作如下:
- 首先搜索出当前服务器的进程号
ps -ef|grep tomcat - 结束当前进程
kill -9 pid - 重启,以tomcat为例
./startup.sh - 查看日志
tail -fn 200 catalina.out
5. 输出重定向
覆盖源文件
追加在源文件后面
6. sed-流编辑器
参考:资源贴1
资源贴2
- -n 输出指定的行号
例子:sed -n ‘n1,n2p’ 文件 打印文件的n1到n2行
综合例子2
截取日志信息,有时候日志文件比较多的时候,需要截取日志分析
- grep -n ‘2018-10-18 00:01:00’ catalina.out 获取最开始的行号 4278202
- grep -n ‘2018-10-18 14:29:05’ catalina.out 获取截止的行号 4286549
- sed -n ‘4278202,4286549p’ catalina.out >newlog-20181018.txt
7. top-动态进程信息
参考 资源贴
8. ps-查看进程
- -m 显示进程
- -p 根据pid选择进程
- -o 格式化
例子:查看进程下的线程
ps -mp pid -o THREAD,tid,time
9. jstack-查看线程堆栈信息
例子:查看进程 jstack pid|grep tid -A 30
10. tar压缩与解压
- .tar
压缩:tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg
解压:tar -xvf file.tar //解压 tar包
- .tar.gz
tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
解压:tar -xzvf file.tar.gz //解压tar.gz
- .tar.gz2
压缩:tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
解压:tar -xjvf file.tar.bz2 //解压 tar.bz2
- tar.Z
压缩:tar -cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
解压:tar -xZvf file.tar.Z //解压tar.Z
- tar.rar
压缩:rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
解压:unrar e file.rar //解压rar
- zip
压缩:zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux
解压:unzip file.zip //解压zip
- jar
- 压缩war包:
把当前目录下的所有文件打包成game.war
jar -cvfM0 game.war ./
-c 创建war包
-v 显示过程信息
-f
-M
-0 这个是阿拉伯数字,只打包不压缩的意思 - 解压war包
jar -xvf game.war
解压到当前目录
还没有评论,来说两句吧...