Linux shell 经验手册__003__高级命令

来源:互联网 发布:知乎 金钱 编辑:程序博客网 时间:2024/06/03 20:30

1 lsof 命令

lsof `which httpd` #那个进程在使用apache的可执行文件lsof abc.txt #显示开启文件abc.txt的进程,也就是哪些进程使用了该文件lsof -i :22 #列出占用22端口的进程信息lsof -c mysql #显示mysql进程现在打开的文件信息lsof -g gid #显示归属gid的进程情况lsof +d /usr/local/ #显示目录下被进程开启的文件lsof +D /usr/local/ #同上,但是会搜索目录下的目录,时间较长lsof -d 4 #显示使用fd为4的进程lsof -i #用以显示符合条件的进程情况,语法:lsof -i[46] [protocol][@hostname|hostaddr][:service|port]lsof -p pid #列出特定pid进程的文件信息lsof -r [t] #不断重复执行 lsof 命令,默认15s间隔lsof -u username #列出某个用户打开的文件信息lsof -u ^root #列出所有非root用户打开的文件信息lsof -i tcp #列出所有tcp网络连接信息lsof -i tcp:80 #列出所有tcp端口好为80的连接信息lsof -i tcp@192.168.0.11:80 #

2 磁盘信息相关命令
df
fdisk
du
lsblk
lvdisplay
gvdisplay

3 文本处理相关
sed
cut:一行为单位,提取列;取多空格相连的数据时,比较吃力;

选项与参数:-d: 后面接分隔符,与 -f 一起使用;-f: 用来去除第几段;-c: 以字符为单位,取出固定字符区间;># echo $PATH |cut -d':' -f 3,5># export | cut -c 12-

awk
tr :删除文件中的控制字符,或进行字符替换

#语法:tr [–c/d/s/t] [SET1] [SET2]#大小写转换echo "Hello World I Love You" |tr [-t] [a-z] [A-Z]

sort, wc, uniq
col, join, paste, expand

4 网络相关命令
ifconfig

ifconfig | cut -c 10 | tr -d ' ' | tr -s '\n'

netstat
route
traceroute
host
nslookup

5 fuser,

6 awk 截取某列,以及截取多列的用法:

ps -elf | awk -F' ' '{printf $4" "; for(i=15;i<=NF;i++) printf $i" ";printf "\n"}' > cmd.out

以上命令,可以截取 pid + cmd 的所有信息

原创粉丝点击