linux bassic Week 5 Blogging

linux bassic Week 5 Blogging

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

~]# grep -E "^[[:space:]]+" /boot/grub/grub.conf 
root (hd0,0)
kernel /vmlinuz-2.6.32-504.el6.x86_64 ro root=UUID=cae1b7e9-d579-46d0-9723
-51391a99e07f rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto.UTF-8 
rd_NO_LVM rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-504.el6.x86_64.img

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

~]# grep -E "^#[[:space:]]+[^[:space:]]" /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
.....

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

~]# grep -E "^#[[:space:]]+[^[:space:]]" /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
.....

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

~]# grep -E -o  "^([^:]+\>).*\1$" /etc/passwd
sync:x:5:0:sync:/sbin:/bin/sync
....

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

  ~]# grep -E "^(root|fedora|user1)" /etc/passwd |cut -d: -f1,7
root:/bin/bash
fedora:/bin/bash

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

 ~]# grep -E  "[[:alpha:]]+\(\)" /etc/rc.d/init.d/functions

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

扩展:取出其路径名

~]# echo /etc/passwd/ssh | grep -E -o "[^/]+/?$" 取基名
~]# echo /etc/passwd/ssh | grep -E -o  "^[/].*[/]" 取路径名
~]# echo "/etc/rc.d/init.d/functions" | egrep -o "^\/.*\/{1,}" 取路径名

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

~]# 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
145
128
192
168
145
255
255
....

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

 ~]# ifconfig | grep -E -o "\<[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\>"

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

 egrep -o '\<[[:alnum:]]+\@[[:alnum:]]+\.[[:alnum:]]+\>'

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

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

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

~]# find / \( -nouser -o  -nogroup \) -a -type f
 进一步:查找当前系统上没有属主或属组,且最近3天内曾被访问过的文件或目录;
 ~]# find / \( -nouser -o  -nogroup \) -a  -atime -3  
 /home/pegin
/home/pegin/.gnome2

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

 ~]# find /etc/ -perm -222 ls

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

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

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

 ~]#find /etc/init.d -perm -113 -type f

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

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

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

 ~]# find /etc/ -not -perm -222 -ls

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

 ~]# find /etc/ -mtime -7 -a -not \( -user root -o -user hadoop \)

原创文章,作者:让优秀称为一种习惯,如若转载,请注明出处:http://www.178linux.com/65982

(0)
让优秀称为一种习惯让优秀称为一种习惯
上一篇 2017-01-05 18:07
下一篇 2017-01-05 22:58

相关推荐

  • linux网络管理

    什么是计算机网络     计算机网络是指将不同地理位置上,具有独立功能的计算机和网络设备通过通信链路连接起来,通过操作系统,网络管理软件,和网络通信协议的共同组合下的计算机系统团体,实现资源共享,信息传递的网络。计算机网络的组成部分有各种微小大型计算机,网桥,交换机,路由器,传输介质等网络设备,相应的软件系统,相应的通…

    Linux干货 2016-09-05
  • Linux用户和组管理常用命令

    Linux用户和组管理常用命令 1、useradd:创建用户   useradd [options] LOGIN     -u UID: [UID_MIN, UID_MAX]指定uid,(默认500|1000开头)定义在/etc/login.defs     -o 配合-u 选项, 不检查…

    Linux干货 2017-04-04
  • 系统基础之文件管理grep练习题

    1、显示/proc/meminfo文件中以大小s开头的行; (要求:使用三种方式) [root@wen-7 ~]# grep -i "^s" /proc/meminfo  SwapCached:       &…

    Linux干货 2016-08-07
  • N26-第二周

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。(盗图了,哈哈哈) 文件查看类命令:cat, tac, head, tail, more, less,touch    cat 查看文件内容   tac命令   反向查看文件内容  注:可对照上图 分屏查看命令:more  …

    Linux干货 2017-01-07
  • 加深对grep命令和find命令的熟悉

    1、显示当前系统上root、fedora或user1用户的默认shell。 grep -E “^(root|fedora|user1)\>” /etc/passwd | cut -d: -f7 [root@localhost ~]# grep -E “^(root|fedora|user1)\>” /etc/passwd …

    Linux干货 2017-07-30
  • Shell编程之位置变量

           linux中命令可以接受参数,同样的,shell脚本也可以接受参数。这些参数用$1、$2、$3…$n表示。       $0  表示脚本本身       $1  传递给脚本的第1个参数 $2  传…

    Linux干货 2016-08-12

评论列表(1条)

  • 马哥教育
    马哥教育 2017-04-10 16:19

    find和grep作为基础命令,希望能熟练、灵活的使用~~~加油!!