5.程序包管理与内核命令的使用

1、  显示/boot/grub/grub.conf中以至少一个空白字符开头的行;

~]#  grep -E "^[[:space:]]+" //boot/grub/grub.conf
root (hd0,0)
kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=/dev/mapper/vg_centos6-lv_root rd_NO_VM_LV=vg_centos6/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-279.el6.x86_64.img

2、  显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;

~]# grep -E "^#[[:space:]]+[[:graph:]]+" /etc/rc.d/rc.sysinit
# /etc/rc.d/rc.sysinit - run once at boot time
# Taken in part from Miquel van Smoorenburg's bcheckrc.
# Check SELinux status
# Print a text banner.
# Only read this once.
# Initialize hardware
# Set default affinity
# Load other user-defined modules
# Load modules (for backward compatibility with VARs)
# Configure kernel parameters
# Set the hostname.
# Sync waiting for storage.
# Device mapper & related initialization

3、  打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;

~]# netstat -tal | grep ".*LISTEN[[:space:]]*$"
tcp        0      0 *:55950            *:*                LISTEN     
tcp        0      0 *:sunrpc            *:*              LISTEN     
tcp        0      0 *:ssh             *:*              LISTEN     
tcp        0      0 localhost:ipp         *:*                LISTEN     
tcp        0      0 *:46286             *:*               LISTEN     
tcp        0      0 *:sunrpc            *:*              LISTEN     
tcp        0      0 *:webcache             *:*                  LISTEN     
tcp        0      0 *:ssh              *:*              LISTEN     
tcp        0      0 localhost:ipp          *:*               LISTEN     
tcp        0      0 *:43135              *:*              LISTEN

  4、  添加用户bash, testbash, basher, nologin (此一个用户的shell/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;

 ~]# grep --color=auto -o "\(^[[:alpha:]]*\):.*\1$" /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
bash:x:500:500::/home/bash:/bin/bash
nologin:x:503:503::/home/nologin:/sbin/nologin

5、  显示当前系统上rootfedorauser1用户的默认shell

~]# grep -E  "^(root|fedora|user1)" /etc/passwd
root:x:0:0:root:/root:/bin/bash

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

 ~]# egrep -o "[[:alpha:]]+\(\)" /etc/rc.d/init.d/functions
str()
checkpid()
readlink()
fgrep()
loop()
loop()
run()
pidof()
daemon()
killproc()

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

扩展:取出其路径名

~]# echo -o /etc/httpd/conf/httpd.conf | grep -o "/.*/"
/etc/httpd/conf/
 ~]# echo -o /etc/httpd/conf/httpd.conf | grep -o "[^/]*$"
httpd.conf

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

~]# ifconfig | grep -Eo "[1,2]|[1-9][0-9]|2[0-5][0-5]"
29
2
19
2
16
50
17
19
2
16
50

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

 ~]#  ifconfig |grep -o‘[1-9][0-9]\{0,3\}\.[0-9]\{0,3\}\.[0-9]\{0,3\}\.[0-9]\{1,4\}’
192.168.50.178
192.168.50.255
255.255.255.0
127.0.0.1
255.0.0.0

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

 
grep -E '[[:alnum:]]+@[[:alnum:]]+\.[[:alpha:]]\+'

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

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

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

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

 ~]# find / -nouser -o -nogroup
find: “/proc/10321/task/10321/fd/5”: 没有那个文件或目录
/andor/git-2.7.1/git.spec
/andor/git-2.7.1/configure
/andor/git-2.7.1/version
/andor/git-2.7.1/git-gui/version
/andor/android-sdk-linux
~]# find / -nouser -nogroup -atime -3
find: “/proc/10343/task/10343/fd/5”: 没有那个文件或目录
find: “/proc/10343/task/10343/fdinfo/5”: 没有那个文件或目录
/andor/android-sdk-linux
/andor/android-sdk-linux/platforms
/andor/android-sdk-linux/add-ons

 

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

~]# find /etc -perm -222
/etc/rc3.d
/etc/favicon.png
/etc/rc5.d
/etc/ssl/certs
/etc/rc0.d
/etc/rc.d/rc3.d/S28autofs

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

find /etc/ -size +1M –a –type f

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

find /etc/init.d –perm -113

15、查找/usr目录下不属于rootbinhadoop的文件;

find /usr -not \( -user root -o -user bin -o -user hadoop \)

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

find /etc ! –perm -222

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

find /etc –mtime 7 –a ! –user root –a ! –user hadoop

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

(0)
N27_jiangyefanN27_jiangyefan
上一篇 2017-07-30 22:19
下一篇 2017-07-31 07:40

相关推荐

  • 进程与计划任务

    PID 进程号,用来标记各个进程;CentOS6中起始的第一个进程为init7中为systemd 进程优先级: 系统优先级:数字越小,优先级越高 0-139(4,5中) 各有140个运行队列和过期队列 0-98,99(6中) 实时优先级:99-0:值越大优先级越高 nice值:-20到19,对应系统优先级100-139或99 进程状态: 运行:running…

    2017-05-14
  • 基于ansible自动部署keepalived+nginx来调度amp

    实战作业: (1) 主/备模型的keepalived+nginx (2) httpd+php+php-mysql (3) mysql-server或mariadb-server         拥有testdb库,并允许testuser对其拥有所有权限 实验环境: 主机1:10.…

    Linux干货 2016-11-07
  • Lvs+keepalived+httpd+NFS搭建高可用

    自己捯饬的模型图 NAT模型图 注意事项:RealServer需要把网关指向Director,并且Director要打开转发功能命令如下:     echo "1" > /proc/sys/net/ipv4/ip_foreward DR模型图 注意事项:需要在RealServer配置…

    Linux干货 2016-10-25
  • MySQL流程函数

    MySQL流程函数 IF(value,x y) 如果value是真,返回x,否则返回y MariaDB [learn]> INSERT INTO salary(sal) VALUES (1000),(2000),(3000),(4000),(5000),(6000),(NULL); Query OK, 7 rows affected (0.06 sec…

    Linux干货 2017-05-02
  • 9 grep & egrep & 正则表达式

    grep grep = Global search REgular expression and Print out the line 语法及用途 grep [OPTIONS] PATTERN [FILE…] 根据用户指定的“…

    Linux干货 2016-08-10
  • 文件权限解析

    文件权限其实就是用户和用户组对文件或目录进行操作的权力。 文件的属性           上图中显示详细信息文件的详细属性,以最后一行为例从左向右依次说明:     1、drwxr-xr-x.    …

    2015-03-23

评论列表(1条)

  • 马哥教育
    马哥教育 2017-08-04 16:17

    从作业情况来看grep和find已经基本掌握,如果加上sed和awk就理完美了,加油。