find
find 路径
参数 | 作用 |
---|---|
-name | 查找文件的名称,可以使用正则, find . - name "*.txt" |
-type | 查找类型:-f 文件、-d目录。如 find . - name "*.txt" -d |
-mtime | 最后修改时间:+30 三十天前、-1 一天以内.如find . - name "*.txt" -f |
-xargs | 前面的结果可以作为后面的输入,如find . -name "*.txt" |xargs rm -rf {} \; |
-exec | 前面的结果可以作为后面的输入,功能更强大,如find . -name "*.txt" -exec cp -r {} ./tmp; |
-k | 限制文件大小,如find . -name "*.txt" -size +10k ,查找大于10K的文件,单位还可以是M 。+ 表示大于,- 表示小于 |
-perm | 权限,如find / -name "*.txt" -perm 755 |
grep
抓取文件中的内容。
grep [参数] 查找的内容 文件名
grep "complete=var" ./tmp/map.txt
参数 | 作用 |
---|---|
–color | 高亮显示 |
-n | 显示行号 |
-v | 去除,例如去除注释# ,去空格。grep -v "#" ./tmp/map.txt|grep -v"^$" |
-i | 忽略大小写 |
awk
AWK 文本分析处理工具、如日志文件。
awk 参数 '{print 打印格式}' 文件名
awk -F: '{print $1}' /etc/passwd
print参数
参数 | 作用 |
---|---|
$数字 | 表示第几列,如$1 打印第一列,$NF 打印最后一列,$NF-1 打印倒数第二列 |
“内容” | 双引号中表示的是拼接的内容 |
awk 参数
参数 | 作用 |
---|---|
-F[分割符] | 指定列的分隔符,如-F: 指定: 为分隔符 |
练习:分离出ifconfig中的ip地址,并将".“用”-"代替
dnm@ubuntu:~/find$ ifconfig
ens33 Link encap:Ethernet HWaddr 00:0c:29:7e:d1:0b
inet addr:192.168.28.131 Bcast:192.168.28.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe7e:d10b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:23220 errors:0 dropped:0 overruns:0 frame:0
TX packets:13486 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14232347 (14.2 MB) TX bytes:2087855 (2.0 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:160 errors:0 dropped:0 overruns:0 frame:0
TX packets:160 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:11840 (11.8 KB) TX bytes:11840 (11.8 KB)
解答:
dnm@ubuntu:~/find$ ifconfig|grep "inet addr:"|grep -v "127.0.0.1"|awk '{print $2}'|awk -F: '{print $2}'| awk -F. '{print $1"-"$2"-"$3"-"$4}'
192-168-28-131
netstat
显示网络的连接状态。
参数 | 说明 |
---|---|
-at | 只显示TCP的网络信息 |
-au | 只显示UDP的网络信息 |
-l | 只列出来正在监听的网络信息,可以与-au、-tu组合使用,如-la、-lu、-lau |
-c | 实时显示连接状态 |
组合命令 | netstat -tn | wc -l ,列出个数 |