N22-第五周作业

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

[root@localhost ~]# cat /etc/passwd | grep "^root" | cut -d: -f7

/bin/bash

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

[root@localhost ~]# cat /etc/init.d/functions | egrep  "\<[_[:alpha:]]+\>\(\)"

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取出其基名;

扩展:取出其路径名

对于/var/log/messages/型的路径名,先去掉最后的/,再用sed分别取基名路径名

[root@localhost ~]# echo "/var/log/messages/" | sed -r  's@/$@@' | sed -r 's@/.*/@@'

messages

[root@localhost ~]# echo "/var/log/messages/" | sed -r  's@/$@@' | sed -r 's@[^/]+$@@'

/var/log/

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

[root@localhost
~]# ifconfig | egrep -o
"\<25[0-5]\>|\<2[0-4][0-9]\>|\<1[0-9][0-9]\>|\<[1-9][0-9]\>|\<[1-9]\>"

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

[root@localhost
~]# cat txt | egrep
"(\<25[0-5]\>.|\<2[0-4][0-9]\>.|\<1[0-9][0-9]\>.|\<[1-9][0-9]\>.|\<[0-9]\>.){3}(\<25[0

-5]\>|\<2[0-4][0-9]\>|\<1[0-9][0-9]\>|\<[1-9][0-9]\>|\<[0-9]\>)"

0.0.0.0

255.255.255.255

10.237.0.100

172.100.0.0

192.168.255.255

1.1.1.1

[root@localhost ~]# cat txt

0.0.0.0

255.255.255.255

10.237.0.100

172.100.0.0

192.168.255.255

0.266.192.168

10.300.6.78

9.6.6.500

1.1.1.1

10237.1.1

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

   

一般来讲,邮箱格式如下:str1@str2.str3。其中str1由大小写字母和字母组成,可以在非开头处有下划线_,但不能有其他特殊字符。
str2可由数字和字母组成,不包含特殊字符,例如qq,163,gmail等,str3由字母组成,例如com,org,cn等。

[root@localhost ~]# cat txt | egrep "^[[:alnum:]]+[_[:alnum:]]*@[[:alnum:]]+\.[[:alpha:]]+$"

jack@163.com

jack@qq.com

jack@gmail.org

jack_123@sohu.cn

123abc@sohu.cn

123_456@qq.com

[root@localhost ~]# cat txt

jack@163.com

jack@qq.com

jack@gmail.org

jack_123@sohu.cn

jack%@sohu.cn

jack@@qq.com

jack@qq.123

jack@qqcom

123abc@sohu.cn

123_456@qq.com

_123@sina.com

123tyf_324.com

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

   ~]# find /var -user root -group mail

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

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

/home/mandriva

/home/mandriva/.mozilla

/home/mandriva/.mozilla/extensions

/home/mandriva/.mozilla/plugins

/home/mandriva/.bash_logout

/home/mandriva/.bash_profile

/home/mandriva/.bashrc

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

~]# find / \(-nouser -o -nogroup\) -atime -3

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

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

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

[root@localhost ~]# find /etc -size +1M -type f -ls

4000366 3772 -rw-r–r–   1 root     root      3858924 11月 21  2015 /etc/selinux/targeted/policy/policy.29

71169087 6852 -r–r–r–   1 root     root      7014922 7月 29 13:34 /etc/udev/hwdb.bin

2617920 1336 -rw-r–r–   1 root     root      1367395 3月  6  2015 /etc/brltty/zh-tw.ctb

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

~]# find /etc/init.d/  -perm -111 -perm /002 -ls

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

]# find /usr ! -user root ! -user bin ! -user hadoop -ls

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

~]# find /etc ! -perm -111  -ls

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

~]# find /etc ! -user root ! -user hadoop -mtime -7

原创文章,作者:上海-brown,如若转载,请注明出处:http://www.178linux.com/46651

(0)
上海-brown上海-brown
上一篇 2016-09-15 22:21
下一篇 2016-09-15 22:21

相关推荐

  • ACL权限详解

    1.ACL简介 2.前期准备 3.ACL的基本操作:添加和修改 4.ACL的其他功能:删除和覆盖 5.目录的默认ACL 6.备份和恢复ACL 7.结束语 1.ACL简介 用户权限管理始终是Linux系统管理中最重要的环节。大家对Linux/Unix的UGO权限管理方式一定不陌生,还有最常用的chmod命令。为了实现一些比较复杂的权限管理,往往不得不创建很多的…

    Linux干货 2017-03-11
  • NFS

    NFS初探 NFS概述 NFS工作流程 NFS Server端设置 NFS工具与命令 NFS配置实例 NFS概述 NFS是什么? NFS,network file system(网络文件系统)的缩写,是一种实现文件共享的实现方式。 NFS的功能是什么 NFS基于RPC协议,实现远程系统调用,共享文件资源。 NFS工作流程 RPC,Remote Pr…

    Linux干货 2016-04-28
  • N25期第一周作业

    计算机的组成与功能  一台能正常工作的计算机有硬件和软件组成,计算机的硬件就好比人的躯体,计算机的软件就好比人的思想,人的思想控制指挥人的躯体,计算机有了软件才能进行工作。 硬件大致由CPU,内存,输入输出设备,存储设备组成,各个部件的主要作用流程是:由输入设备(例如:键盘)输入数据, 数据暂时出入内存, 而后由内存传到CPU(CPU又由运算器+控…

    Linux干货 2016-12-05
  • 自制一个小型Linux(附带网络功能)

      我们这次讲述一下Linux启动的启动流程以及制作一个附带网络功能的mini linux 一、叙述 二、为什么要制作这么一个小型的系统 三、怎么制作 1、制作步骤 2、将虚拟机添加网络功能 一、叙述   在制作一个小型的Linux之前,首先你得明白Linux系统的启动过程,我们用一张图来进行说明  二、为什…

    Linux干货 2016-12-21
  • linux中find命令的那些事

         概述:在介绍find这个强大的文件查找命令前,我们先介绍两个较简单的文件查找命令whereis和locate命令,通常我们都是先使用whereis或者是locate检查,如果真的找不到了,才用find来查找,因为whereis和locate是利用数据库来查找数据的,速度相当快,节约时间,缺点就是有可…

    Linux干货 2016-08-18
  • N25-第五周

    一.显示当前系统上root、fedora或user1用户的默认shell;    [root@localhost ~]# useradd fedora && useradd user1 && grep "^\(root\|fedora\|user1\)" /etc/passwd | cu…

    Linux干货 2017-01-09

评论列表(1条)

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

    ip地址的匹配不对,0.0.0.0是不是不是有效的ip地址?