linux重要命令

1.find详解

查看/usr/local 下面 带 “nginx” 文件 或目录

find /usr/local/ -name "*nginx*"

只找文件 或 只找目录

find /usr/local/ -name "*nginx*" -type f
######
-type f: 只找文件
-type d : 只找目录

按时间,大小过滤

#查找当前目录名称为xxx的目录且1天内创建 且大小大于1k
find . -name "xxx" -type d -mtime -1 -size +1k

#######参数解释
-mtime -1  : -1代表1天内创建的, +1代表1天外创建的。
-size +1k : 大于1k的  +1M代表大于1M的   -1k代表小于1k的。

查找文件后执行命令

#将当前一天内创建的*.logs目录 拷贝到 /tmp目录下 
find . -name "*.logs" -type d -mtime -1 -exec cp -r {} /tmp \;

#######参数解释
-exec cp -r {} /tmp :   执行cp命令,{}代表前面find的结果

2.grep详解

找文件中带有以"linux"开头的字符串

grep -n --color "^linux" 1.txt

#####参数解释
-n : 显示行号。
--color : 显示 颜色。
^linux : 以linux开头, linux$ 以linux结尾。

反向选择 : 查找不包含linux的行

grep -v "linux" 1.txt

#####参数解释
-v :  反向选择。

3.awk详解

案例一:假如有一个文件1.txt 内容如下:

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt

按:号截取第一列到最后一列

[root@VM-0-3-centos test]# awk -F: '{print $1"---"$NF}' 1.txt 
root---/bin/bash
bin---/sbin/nologin
daemon---/sbin/nologin
adm---/sbin/nologin
lp---/sbin/nologin
sync---/bin/sync
shutdown---/sbin/shutdown
halt---/sbin/halt

-F : 指定分隔符,默认是空格。
‘{print 1 " − − − " 1"---" 1""NF}’ : 打印第1列 和 最后一列 , 并用指定的—连接。

案例二:
在这里插入图片描述
找到上面ip地址,并把.替换成- ,结果输出:
172-17-0-3

ifconfig|grep "inet "|grep -v "127.0.0.1"|awk -F " " '{print $2}'|awk -F "." '{print $1"-"$2"-"$3"-"$4}'

第一层grep
ifconfig|grep "inet " : 查找含inet空格的 字符串,结果:

[root@VM-0-3-centos test]# ifconfig |grep "inet "
inet 172.17.0.3  netmask 255.255.240.0  broadcast 172.17.15.255
inet 127.0.0.1  netmask 255.0.0.0

第二层grep
ifconfig|grep "inet "|grep -v “127.0.0.1” : 把 含127.0.0.1排除

[root@VM-0-3-centos test]# ifconfig|grep "inet "|grep -v "127.0.0.1"
inet 172.17.0.3  netmask 255.255.240.0  broadcast 172.17.15.255

第三层awk
awk -F " " ‘{print $2}’ : 以空格分隔列, 打印出第二列。

[root@VM-0-3-centos test]# ifconfig|grep "inet "|grep -v "127.0.0.1"|awk -F " " '{print $2}'
172.17.0.3

第四层awk
awk -F “.” ‘{print $1"-"$2"-"$3"-"$4}’ : 以.分隔,打印1,2,3,4列,中间添加-号

[root@VM-0-3-centos test]# ifconfig|grep "inet "|grep -v "127.0.0.1"|awk -F " " '{print $2}'|awk -F "." '{print $1"-"$2"-"$3"-"$4}'
172-17-0-3
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值