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

请详细总结vim编辑器的使用并完成以下练习题

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

[root@junfeng ~]# cp /etc/rc.d/rc.sysinit /tmp
[root@junfeng ~]# vi /tmp/rc.sysinit 
                  :%s/^[[:space:]]\+/#&/

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

[root@junfeng ~]# cp /boot/grub/grub.conf /tmp
[root@junfeng ~]# vi /tmp/grub.conf 
                  :%s/^[[:space:]]\+//g

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

[root@junfeng ~]# vi /tmp/rc.sysinit 
                  :%s/^#[[:space:]]\+//g

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

[root@junfeng ~]# vi /tmp/grub.conf 
                  :1,3s/^.*/#&/g

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

[root@junfeng ~]# vim /etc/yum.repos.d/CentOS-Media.repo
                  :%s/=0/=1/g

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

 [root@junfeng ~]# crontab -l
 * */4 * * * cp -rf /etc /backup/etc-`date +%Y%m%d%H%M`

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

 [root@junfeng ~]# crontab -l
 10 * * * 2,4,6 cp -rf /etc /backup/etc-`date +%Y%m%d`

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

[root@junfeng ~]# crontab -l
 * */2 * * * grep -i "^s" /proc/meminfo >> /stats/memory.txt

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

[root@junfeng ~]# crontab -l
 * */2 * * 1,2,3,4,5 echo "howdy"

脚本编程练习

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

#!/bin/bash 
mkdir -p /tmp/testdir-`date +%Y%m%d%H%M`

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

#!/bin/bash 
for i in  {1..100}; do
    mkdir -p file$i
    echo "make file$i successful"
done

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

[root@junfeng ~]# awk -F: '(+NR%2==0) {print $1}' /etc/passwd

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

#!/bin/bash
for i in {10..19}; do
    if id user$i &> /dev/null; then
        echo "user$i exists."
    else
        useradd user$i &> /dev/null && echo "user$i" | passwd --stdin user$i
        [ $? -eq 0 ] && echo "Add user$i finished."
    fi
done

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

#!/bin/bash
for i in {10..19}; do
    if [ -d /tmp/file$i ]; then
        echo "file$i exists."
    else
        mkdir -p  /tmp/file$
        [ $? -eq 0 ] && echo "Add file$i finished."
    fi
done

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

#!/bin/bash
for i in {10..19}; do
    chown user$i:user$i /tmp/file$i
    [ $? -eq 0 ] && echo "changed"
done

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

(0)
JeasonJeason
上一篇 2016-08-15
下一篇 2016-08-15

相关推荐

  • 第五周

    1、简述rpm与yum命令的常见选项,并举例
    2、自建yum仓库,分别为网络源和本地源
    3、简述at和crontab命令,制定 每周三凌晨三、五点10分执行某个脚本,输出当前时间,时间格式为 2017-12-28 10:00:00
    4、简述sed常用操作命令,并举例

    Linux干货 2017-12-30
  • 输出重定向 输入重定向 管道简单介绍 -20160729

    输出重定向 输入重定向 管道简单介绍 标准输入和输出 我们先来了解下输入和输出的概念: 在计算机中我们了解到计算机的组成部分:其中有输入 输出设备。       输出重定向 对于程序来说: 程序 :指令 + 数据 对于数据来说,数据可以由我们通过键盘输入,或者程序直接使用存储设备上的数据,我们称为读入 数据,程序处理数据后需要返…

    Linux干货 2016-08-04
  • 第六周作业

    请详细总结vim编辑器的使用 模式化的编辑器 基本模式: 编辑模式,命令模式 输入模式 末行模式: 内置的命令行接口; 打开文件: # vim [options] [file ..] +#:打开文件后,直接让光标处于第#行的行首; +/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的首; 模式转换: 编辑模式:默认模式 编辑模式 …

    Linux干货 2017-03-21
  • Linux文件及目录管理

    Linux 文件管理 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 目录管理类命令:mkdir,rmdir mkdir [OPTION]… DIRECTORY… -p:自动按需创建父目录; -v显示详细过程; -m MODE直接给定权限; rmdir 移除空目录 rmdir&nbs…

    Linux干货 2016-10-09
  • lvs-dr

            通过为请求报文重新封装一个MAC首部进行转发,源MAC是DIP所在的接口的MAC,目标MAC是某挑选出的RS的RIP所在接口的MAC地址;源IP/PORT,以及目标IP/PORT均保持不变;     VIP通常配置在lo:0…

    2017-06-29
  • RAID磁盘阵列

                           又是一周走过      &nbsp…

    2017-08-13

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-17 15:15

    写的很好,排版也很棒,加油,crontab的不对