第五周作业

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

[root@localhost ~]# awk -F: '/^(root|user1|fedora)/{print $1,"shell is",$NF}' /etc/passwd
root shell is /bin/bash
fedora shell is /bin/bash
user1 shell is /bin/bash

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

[root@localhost ~]# egrep -o '^(_|[a-z]+).*\(\)' /etc/rc.d/init.d/functions 
fstab_decode_str()
checkpid()
__readlink()
__fgrep()
__umount_loop()
__umount_loopback_loop()
__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()
confirm()
get_numeric_dev()
is_ignored_file()
is_true()
is_false()
apply_sysctl()
key_is_random()
find_crypto_mount_point()
init_crypto()

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

[root@localhost ~]# echo /etc/fstab | grep  -E  -o  "[^/]+/?$"
fstab

    扩展:取出其路径名

[root@localhost ~]# echo /etc/fstab | grep  -E  -o  "^/[^/].+/" 
/etc/

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

[root@thinkmail ~]# ifconfig | grep  -E  -o  "\<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>"
29
192
168
54
76
192
168
54
255
255
255
255
1
1
4
25
5
127
1
255
1

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

[root@thinkmail ~]# ifconfig eth0 |grep 'inet addr:'|egrep -o '[1][0-9]{1,2}.[0-9]{1,3}.[0-9]{1,3}.[1-9][1-5]{1,2}'
192.168.54
192.168.54.255

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

[root@thinkmail ~]# egrep --color  '[0-9A-Za-z]+@[0-9A-Za-z]+.[a-z]{1,3}' aa
hexinhai@aaa.com
adjaldal@ok.com
jdlalaf@baidu.cn
jdlalaf@baidu.cc
jdlalaf@baidu.net

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

[root@thinkmail ~]# find /var/ -user root -group mail
/var/spool/mail

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

[root@localhost tmp]# find /tmp -nouser -o -nogroup |xargs ls -l
-rw-r--r-- 1  503 503 0 9月  13 16:50 /tmp/aa
-rw-r--r-- 1 root 503 0 9月  13 16:51 /tmp/bb

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

find /tmp -nouser -o -nogroup -atime -3 |xargs ls -l

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

[root@thinkmail tmp]# find /etc/ -type f -perm -222 -ls
131264    0 -rw-rw-rw-   1 root     root            0 9月 13 16:55 /etc

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

[root@thinkmail tmp]# find /etc/ -size +1M |xargs ls -lh
-rw-r--r--. 1 root root 6.9M 9月   9 13:54 /etc/selinux/targeted/modules/active/policy.kern
-rw-r--r--. 1 root root 6.9M 9月   9 13:54 /etc/selinux/targeted/policy/policy.24

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

[root@thinkmail tmp]# find /etc/init.d/ -perm -111 |xargs  ls -l
-rwxr-xr-x  1 root root     0 9月  13 17:01 /etc/init.d/aaa.sh
-rwxr-xr-x  1 root root  1288 5月  12 04:43 /etc/init.d/abrt-ccpp
-rwxr-xr-x  1 root root  1628 5月  12 04:43 /etc/init.d/abrtd
-rwxr-xr-x  1 root root  1642 5月  12 04:43 /etc/init.d/abrt-oops
-rwxr-xr-x  1 root root  1818 2月  17 2016 /etc/init.d/acpid
-rwxr-xr-x  1 root root  2062 2月  20 2015 /etc/init.d/atd
-rwxr-xr-x  1 root root  3580 5月  11 14:17 /etc/init.d/auditd
-rwxr-xr-x. 1 root root  4043 2月  22 2013 /etc/init.d/autofs
-r-xr-xr-x  1 root root  1343 8月  24 02:37 /etc/init.d/blk-availability
-rwxr-xr-x  1 root root  5221 7月  13 00:27 /etc/init.d/cgconfig
-rwxr-xr-x  1 root root  3580 7月  13 00:27 /etc/init.d/cgred
-rwxr-xr-x  1 root root 11864 7月  24 2015 /etc/init.d/cpuspeed
-rwxr-xr-x. 1 root root  2793 7月  19 2011 /etc/init.d/crond
-rwxr-xr-x  1 root root  1801 10月 15 2014 /etc/init.d/haldaemon
-rwxr-xr-x. 1 root root  5829 1月   9 2013 /etc/init.d/halt
-rwxr-xr-x. 1 root root  9515 2月  22 2013 /etc/init.d/ip6tables

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

[root@thinkmail init.d]# find /usr/ -not \( -user root -o -user bin -o -user hadoop \)
/usr/xiaoxin
/usr/libexec/abrt-action-install-debuginfo-to-abrt-cache

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

[root@thinkmail init.d]# find /etc/ -perm -444

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

find /etc -mtime -7 -a -not \( -user root -o -user hadoop \) -ls

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

(0)
xiaoxinxiaoxin
上一篇 2016-09-15
下一篇 2016-09-15

相关推荐

  • 请使用命令行展开功能来完成以下练习

    (1)、创建/tmp目录下的:ac, ad, bc, bd ]# mkdir -p /tmp/{a,b}_{c,d} 或者: ]# touch /tmp/{a,b}_{c,d} (2)、创建/tmp/mylinux目录下的: ]# mkdir -pv /tmp/mylinux/{bin,boot/gtub,dev,etc/{rc.d/init.d,sysco…

    Linux干货 2016-11-06
  • 用shell脚本实现每天定时收集全网日志到一台服务器

    需求 现在公司有这样一个需求,需要收集每天全网运行业务的设备上的某个特定目录底下的日志到一台服务器(这台服务器我们简称logserver),这并在这台logserver上生成以日期为名字的目录 解决思路: 在logserver的crontab里设置两个脚本,在当日晚上23:30执行脚本1收集当日即将被删除的全网脚本;在并在早上8:30执行脚本2,收集昨日全网…

    Linux干货 2015-07-27
  • 第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 2、写一个脚本     (1) 获取当前主机的主机名,保存于hostname变量中;     (2) 判断此变量的值是否为loc…

    2017-04-20
  • 第一周作业

    描述计算机的组成及其功能。 由冯~诺伊曼提出计算机体系结构,计算机主要由控制器、运算器、存储器、输入设备、输出设备五大硬件组成。 控制器(Controller):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。 运算器(Datapath):运算器的功能是对数据进…

    Linux干货 2017-02-07
  • Linux系统发展历史

    一、什么是Linux? Linux是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。在加上用户空间的应用程序之后,成为Linux操作系统。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和…

    Linux干货 2016-10-14
  • Tomcat详解

    Tomcat详解 1、tomcat安装 tomcat的组件:<Server> <Service> <connector/> <connector/> <Engine> <Host /> <Host> <Context/> … </Host> &lt…

    2017-04-27

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-19 18:29

    匹配ip地址不对,在好好想想