马哥教育网络班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 14:31
下一篇 2016-08-15 14:31

相关推荐

  • Linux文本处理工具grep,egrep

    简介:     grep即(Global search REgular expression and Print out the line)全局的搜索正则表达式并且打印显示出来。     通俗点讲:根据用户指定的文本模式(搜索条件)对目标文件进行逐行搜索,显示能匹配到的行。 &n…

    Linux干货 2015-05-11
  • AWK基础用法

    AWK: print 例子:给没个/etc/passwd下的用户都打招呼hello 答案: awk ‘{print “hello:”$1}’ /etc/passwd 内建变量 FS : 输入分隔符 OFS: 输出分隔符 RS : 行输入分隔符 ORS: 行输出分割符 NF : 字段数 NR : 行号数 FNR: 每个文件的行号数 ARGC: 参数个数 ARG…

    Linux干货 2017-05-22
  • N25-第10周博客作业

    请详细描述CentOS的启动流程     启动第一步–加载BIOS         当打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它,这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息…

    Linux干货 2017-03-10
  • 老王的心路历程(二):下一站Web体验监控产品

    在上一篇文章中,和大家聊到了建立Web应用体验监控体系,经过了概念阶段,也完成了技术选型,就进入了把实质性的产品研发阶段。作为产品经理,时刻不敢忘记我们的产品目标:无限感知你的用户,建立完备的体验监控体系,驱动产品的设计、开发和运维! 一、一切皆操作 仔细分析终端用户和Web应用及网站的交互过程,无论是打开页面、点击链接或按钮,还是填写表单、提交查询,一切皆…

    2016-08-15
  • 设计模式 ( 十四 ) 迭代器模式Iterator(对象行为型)

    1.概述 类中的面向对象编程封装应用逻辑。类,就是实例化的对象,每个单独的对象都有一个特定的身份和状态。单独的对象是一种组织代码的有用方法,但通常你会处理一组对象或者集合。 集合不一定是均一的。图形用户界面框架中的 Window 对象可以收集任意数量的控制对象 - Menu、Slider 和 Button。并且,集合的实现可以有多种方式:PHP 数字是一个集…

    Linux干货 2015-07-19
  • 第一周作业

    1. 描述计算机的组成及其功能。
    2. 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
    3. 描述Linux的哲学思想,按照自己的理解对其解释性描述。
    4. 说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、……等命令使用,配合相应实例阐述。
    5. 如何获取帮助信息,描述man文档章节划分。
    6. 罗列发行版基础目录名称命名法则及功用规定。

    Linux干货 2017-12-03

评论列表(1条)

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

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