Centos 7 常用命令收集 (持续更新)

笛里谁知壮士心,沙头空照征人骨。这篇文章主要讲述Centos 7 常用命令收集 (持续更新)相关的知识,希望能为你提供帮助。
一、常用命令
查看系统版本
cat /etc/redhat-release

二、打包和压缩文件
bunzip2 file1.bz2 解压一个叫做 \'file1.bz2\'的文件
bzip2 file1 压缩一个叫做 \'file1\' 的文件
gunzip file1.gz 解压一个叫做 \'file1.gz\'的文件
gzip file1 压缩一个叫做 \'file1\'的文件
gzip -9 file1 最大程度压缩
rar a file1.rar test_file 创建一个叫做 \'file1.rar\' 的包
rar a file1.rar file1 file2 dir1 同时压缩 \'file1\', \'file2\' 以及目录 \'dir1\'
rar x file1.rar 解压rar包
unrar x file1.rar 解压rar包
tar -cvf archive.tar file1 创建一个非压缩的 tarball
tar -cvf archive.tar file1 file2 dir1 创建一个包含了 \'file1\', \'file2\' 以及 \'dir1\'的档案文件
tar -tf archive.tar 显示一个包中的内容
tar -xvf archive.tar 释放一个包
tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下
tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包
tar -jxvf archive.tar.bz2 解压一个bzip2格式的压缩包
tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包
tar -zxvf archive.tar.gz 解压一个gzip格式的压缩包
zip file1.zip file1 创建一个zip格式的压缩包
zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包
unzip file1.zip 解压一个zip格式压缩包
三、系统进程
1、.查进程
ps命令查找与进程相关的PID号:
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e 此参数的效果和指定"A"参数相同。
ps e 列出程序时,显示每个程序所使用的环境变量。
ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H 显示树状结构,表示程序间的相互关系。
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s 采用程序信号的格式显示程序状况。
ps S 列出程序时,包括已中断的子程序资料。
ps -t< 终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
ps u 以用户为主的格式来显示程序状况。
ps x 显示所有程序,不以终端机来区分。

最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。
ps aux | grep program_filter_word,ps -ef |grep tomcat
ps -ef|grep java|grep -v grep 显示出所有的java进程,去处掉当前的grep进程。

2.杀进程
使用kill命令结束进程:kill xxx
常用:kill -9 324
Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME
四、netstat
1、选项
-a或--all:显示所有连线中的Socket;
-A< 网络类型> 或--< 网络类型> :列出该网络类型连线中的相关地址;
-c或--continuous:持续列出网络状态;
-C或--cache:显示路由器配置的快取信息;
-e或--extend:显示网络其他相关信息;
-F或--fib:显示FIB;
-g或--groups:显示多重广播功能群组组员名单;
-h或--help:在线帮助;
-i或--interfaces:显示网络界面信息表单;
-l或--listening:显示监控中的服务器的Socket;
-M或--masquerade:显示伪装的网络连线;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;
-o或--timers:显示计时器;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-r或--route:显示Routing Table;
-s或--statistice:显示网络工作信息统计表;
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-v或--verbose:显示指令执行过程;
-V或--version:显示版本信息;
-w或--raw:显示RAW传输协议的连线状况;
-x或--unix:此参数的效果和指定"-A unix"参数相同;
--ip或--inet:此参数的效果和指定"-A inet"参数相同。
2、实例
列出所有端口 (包括监听和未监听的)
netstat -a#列出所有端口
netstat -at#列出所有tcp端口
netstat -au#列出所有udp端口
列出所有处于监听状态的 Sockets
netstat -l#只显示监听端口
netstat -lt#只列出所有监听 tcp 端口
netstat -lu#只列出所有监听 udp 端口
netstat -lx#只列出所有监听 UNIX 端口
显示每个协议的统计信息
netstat -s显示所有端口的统计信息
netstat -st显示TCP端口的统计信息
netstat -su显示UDP端口的统计信息
在netstat输出中显示 PID 和进程名称
netstat -pt
netstat -p可以与其它开关一起使用,就可以添加“PID/进程名称”到netstat输出中,这样debugging的时候可以很方便的发现特定端口运行的程序。
在netstat输出中不显示主机,端口和用户名(host, port or user)
当你不想让主机,端口和用户名显示,使用netstat -n。将会使用数字代替那些名称。同样可以加速输出,因为不用进行比对查询。
netstat -an
如果只是不想让这三个名称中的一个被显示,使用以下命令:
netsat -a --numeric-ports
netsat -a --numeric-hosts
netsat -a --numeric-users
持续输出netstat信息
netstat -c#每隔一秒输出网络信息
显示系统不支持的地址族(Address Families)
netstat --verbose
在输出的末尾,会有如下的信息:
netstat: no support for `AF IPX\' on this system.
netstat: no support for `AF AX25\' on this system.
netstat: no support for `AF X25\' on this system.
netstat: no support for `AF NETROM\' on this system.
显示核心路由信息
netstat -r
使用netstat -rn显示数字格式,不查询主机名称。
找出程序运行的端口
并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。
netstat -ap | grep ssh
找出运行在指定端口的进程:
netstat -an | grep \':80\'
显示网络接口列表
netstat -i
显示详细信息,像是ifconfig使用netstat -ie。
IP和TCP分析
查看连接某服务端口最多的的IP地址:
netstat -ntu | grep :80 | awk \'{print $5}\' | cut -d: -f1 | awk \'{++ip[$1]} END {for(i in ip) print ip[i],"\\t",i}\' | sort -nr
TCP各种状态列表:
netstat -nt | grep -e 127.0.0.1 -e 0.0.0.0 -e ::: -v | awk \'/^tcp/ {++state[$NF]} END {for(i in state) print i,"\\t",state[i]}\'
查看phpcgi进程数,如果接近预设值,说明不够用,需要增加:
netstat -anpo | grep "php-cgi" | wc -l


【Centos 7 常用命令收集 (持续更新)】



    推荐阅读