vim、crontab、bash for循环练习

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

vim中支持全文查找替换功能且在查找时支持正则表达式,在替换时进行引用。先使用vim /tmp/functions,然后在vim编辑模式中输入:%s/\(^[[:space:]]\+\)/#\1/g再回车,即可看到修改后的效果,然后保存退出。
操作过程如下:

vim、crontab、bash for循环练习  

完成后效果:

vim、crontab、bash for循环练习  

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

  • 先使用vim /tmp/grub.conf打开grub.conf文件

  • 在vim末行模式中使用%s/^[[:space:]]//g然后回车即可

  • 然后继续在末行模式中使用wq进行保存

  • 查看删除之后的效果
    相关操作过程及效果如下所示:

vim、crontab、bash for循环练习
vim、crontab、bash for循环练习  

3、删除/tmp/functions文件中的以#开头,且后面跟了至少一个空白字符的行行的#和空白字符。
在vim编辑模式中使用全文查找替换功能,输入:%s/^#[[:space:]]\+//g,然后回车,即可看到完成后的效果,然后保存退出。
操作过程如下:

vim、crontab、bash for循环练习  

完成后的效果:

vim、crontab、bash for循环练习  

4、为/tmp/grub.conf文件中前三行的行首加#号。
先执行vim /tmp/grub.conf,然后在vim编辑模式中输入:1,3s/^/#/g,然后回车,即可看到效果,然后保存退出。"1,3"表示限定查找范围为第1行到第3行,正则表达式^表示锚定行首,/g选项表示全局替换。
操作过程:

vim、crontab、bash for循环练习
完成后效果:
vim、crontab、bash for循环练习  

5、将/etc/yum.repos.d/CentOS-Media.repo文件中所有的enabled=0或gpgcheck=0的最后的0修改为1。
在vim编辑模式中使用全文查找%,然后查找项使用正则表达式进行表示,并在替换时进行引用,vim编辑模式中输入:%s\(enabled\|gpgcheck\)=0/\1=1/g。
操作过程如下:

vim、crontab、bash for循环练习  

6、每4小时执行一次对/etc目录的备份,备份至/backup目录中,保存的目录名为形如etc-201504020202。
在bash中执行crontab -e,然后使用类似于vim中的编辑操作方法,添加如下语句,需要注意的是在定时任务中使用%需要进行转义:

00 */4 * * * cp -r /etc /backup/etc-$(date +\%Y\%m\%d\%H\%M)  

7、每周2,4,6备份/var/log/messages文件至/backup/messages_logs/目录中,保存的文件名形如messages-20150402。
在bash中执行crontab -e,然后使用类似于vim中的编辑操作方法,添加如下语句,需要注意的是在定时任务中使用%需要进行转义:

00 00 * * 2,4,6  cp -r /var/log/messages /backup/messages_logs/messages-$(date +\%Y\%m\%d)

8、每天每两小时取当前系统/proc/meminfo文件中的所有以S开头的信息至/stats/memory.txt文件中。
在bash中执行crontab -e,然后使用类似于vim中的编辑操作方法,添加如下语句:

00 */2 * * * cat /proc/meminfo | grep "^S" >> /stats/memory.txt

9、工作日的工作时间内,每两小时执行一次echo "howdy"。在bash中执行crontab -e,然后使用类似于vim中的编辑操作方法,添加如下语句:

00 9-18/2 * * 1-5 echo "howdy"

脚本编程练习

10、创建目录/tmp/testdir-当前日期时间,并在此目录创建100个空文件:file1-file100。  

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

vim、crontab、bash for循环练习

12、创建10用户user10-user19,密码同用户名。  

vim、crontab、bash for循环练习  

13、在/tmp/创建10个空文件file10-file19,并把file10的属主和属组改为user10,依次类推。  

vim、crontab、bash for循环练习

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

赞 (0)
N24_lantianN24_lantian
上一篇 2016-12-03 16:58
下一篇 2016-12-03 17:51

相关推荐

  • 谁说C语言很简单?

    前两天,Neo写了一篇《语言的歧义》其使用C语言讨论了一些语言的歧义。大家应该也顺便了解了一下C语言中的很多不可思异的东西,可能也是你从未注意到的东西。 是的,C语言并不简单,让我们来看看下面这些示例: 为什么下面的代码会返回0?(这题应该很简单吧) int x;   return x == (1&…

    Linux干货 2016-03-20
  • corosync+pacemaker+drbd+mysql配置安装详解

    一,  基本环境介绍及基本环境配置 节点1: node1.hulala.com      192.168.1.35     centos6.5_64    添加8G新硬盘 节点2: node1.hulala.com      192.168.1.36…

    Linux干货 2016-05-08
  • Linux nginx 服务

                           Linux nginx 服务 Nginx服务简介:      NGINX :是一个自由、开源、高性能、轻量级的HT…

    系统运维 2016-11-18
  • 一个“蝇量级” C 语言协程库

    协程(coroutine)顾名思义就是“协作的例程”(co-operative routines)。跟具有操作系统概念的线程不一样,协程是在用户空间利用程序语言的语法语义就能实现逻辑上类似多任务的编程技巧。实际上协程的概念比线程还要早,按照 Knuth 的说法“子例程是协程的特例”,一个子例程就是一次子函数调用,那么实际上协程就是类函数一样的程序组件,你可以…

    Linux干货 2016-08-15
  • 一起学DHCP系列(五)指派、获取

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/163168     本节将主要讲述DHCP客户端获取IP的过程,也是此系列中非常重要的一节。   &…

    Linux干货 2015-03-25
  • vncserver安装配置小结

      安装VNC Server 端:        1. yum install  tigervnc-server         //RHEL6: vnc server的包名          yum &nbs…

    Linux干货 2016-03-09

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-07 23:32

    有图有真相,就眼明了,很好