N25_第五周作业

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

[root@EASTED ~]# grep -E "(root|fedora|user1)" /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
fedora:x:1013:1013::/home/fedora:/bin/bash
user1:x:1014:1014::/home/user1:/bin/bash

[root@EASTED ~]# grep -E "(root|fedora|user1)" /etc/passwd|cut -d: -f7
/bin/bash
/sbin/nologin
/bin/bash
/bin/bash

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

[root@EASTED ~]# grep  -E  -o  "[_[:alnum:]]+\(\)"  /etc/rc.d/init.d/functions
checkpid()
__pids_var_run()
__pids_pidof()
daemon()
killproc()
pidfileofproc()
pidofproc()
status()
echo_success()
echo_failure()
echo_passed()
echo_warning()
update_boot_stage()
success()
failure()
passed()
warning()
action()
strstr()
is_ignored_file()
is_true()
is_false()
apply_sysctl()

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

[root@aio2 ~]# echo /etc/sysconfig/network-scripts/ifcfg-eno1 | grep "[^\/]\+\/\?$"
/etc/sysconfig/network-scripts/ifcfg-eno1

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

[root@EASTED ~]# ifconfig | grep  -E  -o  "\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>"
192
168
7
13
255
255
255
192
168
7
255
64
29
22
6
8
2
3
73
127
1
255
1
128
22
1
7
22
1
7
192
168
122
1
255
255
255
192
168
122
255
52
54
17
54

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

[root@aio2 ~]#  ip addr list | grep -E -o "\<((1?[0-9][0-9]?|2[0-4][0-9]|25[0-4])\.){3}(1?[0-9][0-9]?|2[0-4][0-9]|25[0-4])\>"
127.0.0.1
10.10.139.12

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

[root@aio2 ~]# grep -E "[^[:space:]].*@[^[:space:]].*" mail

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

[root@EASTED ~]# find /var -user root -a -group mail -ls 
100664302    4 drwxrwxr-x   2 root     mail         4096 1月  2 23:13 /var/spool/mail
103173137    4 -rw-------   1 root     mail          661 1月  2 12:37 /var/spool/mail/root

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

[root@EASTED ~]# find / -nouser -a -nogroup -a -atime -3
find: ‘/proc/26189’: 没有那个文件或目录
find: ‘/proc/26379’: 没有那个文件或目录
find: ‘/proc/26380/task/26380/fd/6’: 没有那个文件或目录
find: ‘/proc/26380/task/26380/fdinfo/6’: 没有那个文件或目录
find: ‘/proc/26380/fd/6’: 没有那个文件或目录
find: ‘/proc/26380/fdinfo/6’: 没有那个文件或目录
find: ‘/run/user/1000/gvfs’: 权限不够
/home/bash
/home/bash/.mozilla
/home/bash/.mozilla/extensions
/home/bash/.mozilla/plugins
/home/bash/.bash_logout
/home/bash/.bash_profile
/home/bash/.bashrc
/home/testbash
/home/testbash/.mozilla
/home/testbash/.mozilla/extensions
/home/testbash/.mozilla/plugins
/home/testbash/.bash_logout
/home/testbash/.bash_profile
/home/testbash/.bashrc
/home/basher
/home/basher/.mozilla
/home/basher/.mozilla/extensions
/home/basher/.mozilla/plugins
/home/basher/.bash_logout
/home/basher/.bash_profile
/home/basher/.bashrc
/home/nologin
/home/nologin/.mozilla
/home/nologin/.mozilla/extensions
/home/nologin/.mozilla/plugins
/home/nologin/.bash_logout
/home/nologin/.bash_profile
/home/nologin/.bashrc

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

[root@EASTED ~]# find /etc -perm /222 -type f -ls

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

[root@EASTED ~]# find /etc -size +1M -type f -exec ls -lh {} \;
-rw-r--r--. 1 root root 3.7M 11月 21 2015 /etc/selinux/targeted/policy/policy.29
-r--r--r--. 1 root root 6.7M 8月  31 22:36 /etc/udev/hwdb.bin
-rw-r--r--. 1 root root 1.4M 3月   6 2015 /etc/brltty/zh-tw.ctb

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

[root@EASTED ~]# find /etc/init.d -perm 113 -type f -ls

12、查找/usr目录下不属于root、bin或hadoop的文件;[root@EASTED ~]# find /usr -not ( -user

root -o -user bin \) -ls
68670714    4 drwx------   2 polkitd  root         4096 8月 31 22:24 /usr/share/polkit-1/rules.d
34502454   16 -rwsr-sr-x   1 abrt     abrt        15336 12月  1  2015 /usr/libexec/abrt-action-install-debuginfo-to-abrt-cache

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

[root@EASTED ~]# find /etc -perm /222 -type f -ls

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

[root@EASTED ~]# find /etc -mtime -7 -a -not -user root -a -not -user hadoop -ls

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

(0)
LYFLYF
上一篇 2017-01-10
下一篇 2017-01-10

相关推荐

  • Openssl搭建私有CA认证

    概述 CA英文全称Certification Authority,即数字证书认机构。从广义上来说,CA是负责发放和管理数字证书的权威机构,并作为用户数字认证中受信任的第三方,承担公钥体系(PKI)中公钥的合法性检验的责任,在互联网上,实现用户与用户、用户与企业之间的数字身份认证。 本文通过使用openssl进行搭建私有CA认证体系,从而简单地了解CA的认证过…

    Linux干货 2016-09-22
  • Linux系统性能工具

    linux中几款常用的系统性能分析工具: 1.vmstat命令 解释: 虚拟内存信息 用法: vmstat [options] [delay [count]] vmstat 2 5 //每2秒刷新一次,一共刷新5次 输出属性: procs: r:可运行(正运行或等待运行)进程的个数,和核心数有关 b:处于不可中断睡眠态的进程个数(被阻塞的队列的长度) mem…

    Linux干货 2017-12-19
  • Linux软件包安装

    Linux系统和Windows系统在软件包安装上区别很大:     软件运行环境:         API: Application Programming Interface    POSIX: P…

    Linux干货 2016-08-21
  • 小巧精悍——常见文本处理工具用法及技巧总结

    小巧精悍——常见文本处理工具用法及技巧总结 Linux最重要的哲学思想就是:一切皆文件。可见文件及文件操作在Linux当中是多么的重要。在Linux系统中我们也会经常用到各种文本文件处理的操作,熟练使用这些小巧精悍的文本处理工具,在关键时刻往往展现非凡的神奇功效。常见文本处理小工具:cat、hexdump、nl、less、head、tail、cut、tr、r…

    Linux干货 2016-11-05
  • 设计模式(十)享元模式Flyweight(结构型)

    相对于其它模式,Flyweight模式在PHP实现似乎没有太大的意义,因为PHP的生命周期就在一个请求,请求执行完了,php占用的资源都被释放。我们只是为了学习而简单做了介绍。 1. 概述 面向对象技术可以很好地解决系统一些灵活性或可扩展性或抽象性的问题,但在很多情况下需要在系统中增加类和对象的个数。当对象数量太多时,将导致运行代价过高,带来性能下降等问题。…

    Linux干货 2015-07-08
  • Linux软件包管理

      在我们的运维工作,总是避免不了安装某些软件,或者编译安装某些软件,我们知道操作系统当中的程序都是有程序员通过开发工具开发的来,程序员直接编写的纯文本的文档我们称之为源代码,但我们的计算机只能识别二进制程序,那么必须要将源代码变成计算机能识别的二进制程序,这里需要通过编译器来进行编译,将源码转换成二进制程序,再通过安装即可。 还有一类程序就是二进…

    Linux干货 2016-08-24

评论列表(1条)

  • 马哥教育
    马哥教育 2017-02-17 10:25

    写的很好,排版也很漂亮,继续加油