find / -perm -4000 2>/dev/null的拆分讲解

chmod

给文件提权
(600) 只有拥有者有读写权限。
(644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。
(700) 只有拥有者有读、写、执行权限。
(755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
(711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
(666) 所有用户都有文件读、写权限。
(777) 所有用户都有读、写、执行权限。

find / -perm -4000 2> /dev/null

-perm

匹配匹配权限
4000 SUID 程序执行时,如果该程序有SUID权限,会变成程序文件的属主,一般来说进程的属主是由进程的发起者来发起的,并不是程序文件的属主。
2000 SGID 在程序执行时,组身份会发生改变,从用户运行变成所属组运行。(当用户无法执行文件时,如果该程序有SGID权限,那么可以将用户的身份升级为该可执行该程序文件的属组
1000 SBIT 当程序设定了SBIT权限属组内的每个用户或者其他所有用户,只能创建文件和删除自己的文件,不能删除其他用户的文件。

2>/dev/null

这句话说的是将错误输出(stderr)到黑洞(bit bucket)
首先默认情况下>/dev/null是1,也就是标准输出(stdout)
那么我来讲解一下
黑洞(bit bucket)简单来讲就是垃圾桶,你可以通过设定规则将你不想要的信息丢进去。
标准输出(stdout)I是Input的意思,从外部设备输入到内存,当你执行由一个命令来打开标准文件的时候,如果文件 被执行那么就会获得一个标准输出的文件结果。(即程序运行的结果)
标准错误(stderr)O是Out的意思,从内存输出到外部设备,当你执行由一个命令来打开标准文件的时候,如果文件被不执行就会出现一个标准错误的错误文件。(即错误信息的文件)
所以">", 即等于"1>", 标准输出
当你不想看到错误的信息时, 你可以使用"2> /dev/null", 来隐藏一个命令的错误信息,将它丢进黑洞。

总结

find / -perm -4000 2>/dev/null

就是寻找 4000权限的文件,不显示其他的错误信息相当于过滤。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值