Linux命令练习第三关(1)

1.如何取得/etc/hosts文件的权限对应的数字内容,-rw-r–r–为644,要求使用命令取得644这样的数字。

解答:
思路:
1.通过stat输出包含目标的内容。
2.通过head,tail,sed,awk,grep定位到单行。(取行惯用命令)
3.通过cut,awk等设置分隔符取出需要段内容。(取列惯用命令)

[root@ianLinux ~]# stat /etc/hosts

这里写图片描述

这里写图片描述

awk多分隔符方法:

[root@ianLinux ~]# stat /etc/hosts|sed -n '4p'|awk -F "[0/]" '{print $2}'
# 或
[root@ianLinux ~]# stat /etc/hosts|awk -F "[0/]" 'NR==4 {print $2}' 

这里写图片描述

sed后向引用方法:

[root@ianLinux ~]# stat /etc/hosts|sed -nr '4s#^.*\(0(.*)/-.*$#\1#gp'

这里写图片描述

犯的错误:

这里写图片描述
^.*(0(.*)改为^.*\(0(.*)


这里写图片描述
把双引号改为单引号。

stat加参数的方法:

stat可以列出文件的详细信息。
这里写图片描述

man一下stat,看这些信息是否能通过参数取出。
-c –format=FORMAT
use the specified FORMAT instead of the default; out-put a newline after each use of FORMAT

这里写图片描述

[root@ianLinux ~]# stat -c %a /etc/hosts

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值