马哥教育网络班21期-第六周课程练习

1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;

 # :%s@^[[:space:]]\+@#&@g

2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符;

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

3、删除/tmp/rc.sysinit文件中的以#开头,且后面跟了至少一个空白字符的行行的#和空白字符

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

4、为/tmp/grub.conf文件中前三行的行首加#号;

 # :1,3s@^.*@#&@g

5、将/etc/yum.repos.d/CentOS-Media.repo文件中所有的enabled=0或gpgcheck=0的最后的0修改为1;

 # :%s@\(enabled=\)1@\10@g

6、每4小时执行一次对/etc目录的备份,备份至/backup目录中,保存的目录名为形如etc-201504020202

 # 0 */4 * * * /bin/cp -a /etc /backup/etc-$(date +\%Y\%m\%d\%H\%M)

7、每周2,4,6备份/var/log/messages文件至/backup/messages_logs/目录中,保存的文件名形如messages-20150402

 # 0 1  *  *  2,4,6 /bin/cp -a /var/log/messages /backup/messages_logs/messages-$(date +\%Y\%y\%d)

8、每天每两小时取当前系统/proc/meminfo文件中的所有以S开头的信息至/stats/memory.txt文件中

 # 0 */2 */1 * * /bin/grep "^S" /proc/meminfo >> /stats/memory.txt

9、工作日的工作时间内,每两小时执行一次echo "howdy"

 # 0 9-18/2 * * 1-5 /bin/echo "howdy"

脚本编程练习

10、创建目录/tmp/testdir-当前日期时间; 

11、在此目录创建100个空文件:file1-file100

#!/bin/bash
 mkdir /tmp/testdir-`date +%F`
dir=/tmp/testdir-`date +%F`/file
for i in {1..100};do
  mkdir $dir$i
done

12、显示/etc/passwd文件中位于第偶数行的用户的用户名;

#!/bin/bash
j=`wc -l /etc/passwd | cut -d" " -f1`
for i in $(seq 0 2 $j );do
     if [ $i -eq 0 ];then
     echo "abc" >& /dev/null
    else
     echo "$i lines user is $(grep -n "." /etc/passwd | grep "^$i\>" | cut -d: -f2)" 
fi
done

13、创建10用户user10-user19;密码同用户名;

#!/bin/bash
declare -i i=10
while [ $i -le 19 ];do
   if [ `id -u` -ne 0 ];then
     echo "only root can Add users."
   exit 2
  elif
     id user$i &> /dev/null
     [ $? -eq 0 ];then
     echo "user$i exits."
  else
     useradd user$i
     echo user$i | passwd --stdin user$i
   fi
   let i++
done

14、在/tmp/创建10个空文件file10-file19; 

15、把file10的属主和属组改为user10,依次类推。

#!/bin/bash
declare -i i=10
while [ $i -le 19 ];do
     [ -e /tmp/file$i ];then
     chown user$i.user$i /tmp/file$i
  else
     touch /tmp/file$i
     chown user$i.user$i /tmp/file$i
     fi
ls -l /tmp/user$i
let i++
done

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

(0)
哎哟喂哎哟喂
上一篇 2016-08-15
下一篇 2016-08-15

相关推荐

  • Linux中正则表达式及find指令的使用

    1、显示当前系统上root、Fedora或user1用户的默认shell [root@centos6 ~]# grep -E "^\<(root|fedora|user1)\>" /etc/passwd root:x:0:0:root:/root:/bin/bash fedor…

    Linux干货 2016-10-24
  • N25第五周博客作业

    第五周博客作业   1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;   2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;   3、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行; &nbs…

    Linux干货 2016-12-28
  • Boot目录下内容丢失导致系统无法启动

    Boot目录下内容丢失导致系统无法启动 笔者朋友近期在一次学习过程中不慎将虚拟机中boot目录下内容丢失,导致系统无法启动。当然此前他并不知道是这样,只是应为莫名的弹出框报错所有导致系统无法启动。此后朋友将此故障告知笔者,笔者本身其实也是小白刚刚学习linux不就,但是对这些稀奇古怪的故障感觉很有兴趣,所以笔者就掉进坑里搞了好久才搞出来点眉目来。为了让更多学…

    Linux干货 2016-10-24
  • find、locate详细解析

    文件查找 在linux系统中如果我们不知道具体的文件的具体位置,我们可以使用文件查找命令来找到我们想找的文件,linux中也有相当优秀的查找命令,(如locate、find),通常查找速度快是locate,因为它是利用数据库查找的,所以速度很快,而find是全磁盘扫描进行查找,所以速度比较慢。 locate和find都是在文件系统上查找符合条件的文件含义。 …

    Linux干货 2016-08-13
  • linux基础学习-第九天(shell基础)

    2016-08-10 授课内容: shell脚本基础: 变量 运算 bash测试(数字测试、字符测试、文件测试、组合测试) read命令 变量作用: 1、数据存储格式 2、参与的运算 3、表示的数据范围 变量类型: 1、本地变量 2、环境(全局)变量 3、特殊变量     驼峰命名变量:每个单词一个字母大写 本地变量:…

    Linux干货 2016-08-11

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-17 14:34

    写的很好,排版也很棒,加油,