Linux基础知识(五)

1、显示当前系统上root、fedora或user1用户的默认shell

[root@server01 ~]# cat /etc/passwd | grep –color=auto -E "^root|fedora|user1" | cut -d : -f 1,7

2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如hello()

[root@server01 ~]# cat /etc/rc.d/init.d/functions | grep –color=auto -E "\<[a-z]*\>\(\)"

3、使用echo命令输出一个绝对路径,使用grep取出其基名

方法一:

(1)[root@server01 ~]# echo "/var/log/messages" | grep -E -o "[a-z]*$|[a-z0-9]*[^/][a-z0-9]*$"

(2)[root@server01 ~]# echo "/etc/sysconfig/network-scripts/ifcfg-eth0" | grep -E -o "[a-z]*$|[a-z0-9]*[^/][a-z0-9]*$"

(3)[root@server01 ~]# echo "/var/log/anaconda.log" | grep -E -o "[a-z]*$|[a-z0-9]*[^/][a-z0-9]*$"

取路径名(自行练习的):

(1)[root@server01 Packages]# echo "/var/lib/postfix/master.lock" | grep -E -o "^[/].*[/]"

(2)[root@server01 ~]# echo "/etc/sysconfig/network-scripts/ifcfg-eth0" | grep -E -o "^[/].*[/]"

4、找出ifconfig命令结果中的1-255之间的数字

[root@bogon ~]# ifconfig | grep –color=auto -E -o "[1-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-5]{3}"

5、挑战题:写一个模式,能匹配合理的IP地址

[root@bogon ~]# ifconfig | grep –color=auto -E -o "\<([1-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-1][0-9]|22[0-3])[\.](([0-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-5]{2})[\.]){2}([1-9]|[1-9][0-9]|[1][0-9]{2}|[2][0-5][0-4])\>"

6、挑战题:写一个模式,能匹配所有的邮件地址

[root@server01 ~]# cat mail.txt | grep -o –color=auto -E "\<[^0-9][[:alnum:]]{3,20}[@][[:alnum:]].*[.]([a-z]{3}[.][a-z]{2}|[a-z]{3})\>"

7、查找/var目录下属主为root,且属组为mail的所有文件或目录

[root@server01 ~]# find /var -user root -a -group mail -ls

8、查找当前系统上没有属主或属组的文件

[root@server01 ~]# find / -nouser -o -nogroup -ls

进一步:查找当前系统上没有属主或属组,且最近3天内曾被访问过的文件或目录

[root@server01 ~]# find / -nouser -a -nogroup -a -atime -3 -ls

9、查找/etc目录下所有用户都有写权限的文件

[root@server01 ~]# find /etc/ -perm -222 -ls

10、查找/etc目录下大于1M,且类型为普通文件的所有文件

[root@server01 ~]# find /etc/ -type f -size +1M -exec ls -lh {} \;

11、查找/etc/init.d/目录下,所有用户都有执行权限,且其他用户有写权限的文件

[root@server01 ~]# find /etc/init.d/ -perm -111 -a -perm -002 -ls

12、查找/usr目录下不属于root、bin或hadoop的文件

方法一:[root@server01 usr]# find /usr -not -user root -a -not -user bin -a -not -user hadoop -ls

方法二:[root@server01 usr]# find /usr -not \( -user root -o -user bin -o -user hadoop \) -ls

13、查找/etc目录下至少有一类用户没有写权限的文件

[root@server01 usr]# find /etc/ -not -perm -222 -ls

14、查找/etc目录下最近一周内其内容被修改过,且不属于root或hadoop的文件

[root@server01 usr]# find /etc/ -mtime -7 -a -not \( -user root -a -user hadoop \) -exec stat {} \; | grep "Modify:"

原创文章,作者:Tornado,如若转载,请注明出处:http://www.178linux.com/54183

(0)
TornadoTornado
上一篇 2016-10-25 09:46
下一篇 2016-10-25 09:46

相关推荐

  • keepalived+lvs-dr实现高可用负载均衡

    keepalived+lvs-dr实现高可用负载均衡 实验拓扑 实验要求 RS1与RS2地址为172.18.27.201/202 VS1和VS2地址为172.18.27.103/200,VIP为172.18.27.254 VS1和VS2实现lvs-dr负载均衡及高可用性,且vs为sorry sever。 keepalived是单主模式。 实验步骤 各个主机安…

    2017-05-14
  • 脚本又见脚本,作业又是作业_第七周

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@centos ~]# fdisk -l &n…

    Linux干货 2016-12-30
  • linux系统启动流程

    linux系统启动流程 CentOS(5、6)系统启动流程 具体流程: 加载BIOS的硬件信息与进行自我测试,并依据设置取得第一个可启动的设备; 读取并执行第一个启动设备内MBR的boot Loader 依据boot Loader的设置加载Kernel,Kernel会开始检测硬件与加载驱动程序 硬件驱动成功后,Kernel会主动调用init进程,而init会…

    Linux干货 2016-09-11
  • 第三天作业

    1、列出当前系统上所有已经登录的用户的用户名。注意:同一个用户登录多次,则只显示一次即可 [root@localhost ~]# who | cut -d ' ' -f1 | sort | uniq [root@localhost ~]# who (unknown) :0         &nbsp…

    Linux干货 2016-08-30
  • 用户相关属性权限、正则表达式的应用(网络班21期第四周博客)

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。          mkdir /home/tuser1        &n…

    Linux干货 2016-08-02
  • 一起学DNS系列(十三)图文详说A、CNAME、MX和NS记录

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/226194    前面用了12个小节对DNS的基础、以及Windows的DNS系统作了较详细的描述,下面的几节主要是说一些有关DNS应用方面…

    2015-03-18

评论列表(1条)

  • 马哥教育
    马哥教育 2016-10-27 13:10

    下次操作,记得将命令执行的结果或影响的行列出就更好了!