1、总结文本编辑工具vim的使用方法;

 

2、总结文件查找命令find的使用方法;

 

3、总结bash环境变量的相关内容和Linux文件系统上的特殊权限

 

 

VIM练习:
  1、复制/etc/grub2.cfg配置文件至/tmp目录,用查找替换命令删除/tmp/grub2.cfg文件中的行首的空白字符;
   CentOS: /etc/grub.conf

        :%s@^[[:space:]]\+@@

  2、复制/etc/rc.d/init.d/functions文件至/tmp目录,用查找替换命令为/tmp/functions的每行开头为空白字符的行的行首加一个#; 原有空白字符保留;

        :%s@^[[:space:]]@#&

  3、替换/tmp/functions文件中的/etc/sysconfig/init为/var/log;

        :%s@/etc/sysconfig/init@/var/log@g

  4、删除/tmp/functions文件中所以#开头,且#后面至少跟了一个空白字符的行的行首#;

       :%s@^#[[:space:]]@[[:space:]] 

 

 

find命令练习:
   1、查找/var目录属主为root,且属组为mail的所有文件;

     #find /var -user root -group mail -ls

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

     #find /usr -not -user root -a -not -user bin -a -not -user hadoop  -ls

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

   3、查找/etc目录下最近一周内其内容修改过,且属主不为root或hadoop的所有文件;

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

   4、查找当前系统上没有属主或属组,且最近一周内曾被访问过的所有文件;

     #find / \( -nouser -o -nogroup \) -a -atime -7

   5、查找/etc目录下大于20k且类型为普通谁的的所有文件;
     #find /etc -size +20k -a -type f

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

     #find /etc -not -perm +222 -ls    

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

     #find /etc -not -perm -111 -ls

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

    #find /etc/init.d -perm -113-ls

 

特殊权限练习:

1、让普通用户能使用/tmp/cat去查看/etc/shadow文件;

[root@localhost~]# which cat 
/bin/cat
[root@localhost~]# cp /bin/cat  /tmp/ 
[root@localhost~]# chmod u+s /tmp/cat

 

2、创建目录/test/data,让某组内普通用户对其有写权限,且创建的所有文件的属组为目录所属的组;此外,每个用户仅能删除自己的文件;

 

[root@localhost~]#mkdir -pv /test/data
[root@localhost~]#chmod g+ws /test/data