第六周:vim编辑器和cron计划任务的使用练习

查看vim编辑器的使用介绍另见:http://afterdawn.blog.51cto.com/7503144/1855557

at及cront计划任务介绍见:http://afterdawn.blog.51cto.com/7503144/1864365

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

命令模式下,输入以下内容:
%s@\(^[[:space:]].*\)@#\1@g
或
%s@\(^[[:space:]]\+\)@#\1@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@\(.*\)@#\1@g
或
1,3s@^@#@g

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

命令模式下,输入:
%s@\(enabled=\|gpgcheck=\)0@\11@g

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

0 */4 * * * /bin/tar -zcvf /backup/etc-$(date +%Y%m%d%H%M).tar.gz /etc/ &>/dev/null

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

0 0 * * 2,4,6 /bin/tar -zxvf /backup/messages_logs/messages-$(date +%Y%m%d).tar.gz /var/log/messages &>/dev/null

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

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

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

0 */2 * * 1-5 /bin/echo ""howdy""

脚本编程练习 
10、创建目录/tmp/testdir-当前日期时间;

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

#!/bin/bash
dir=/tmp/testdir-$(date +%F)
[ ! -d $dir ] && mkdir $dir && cd $dir
for i in $(seq 100); do
        touch file$i
        let i++
done

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

通过脚本实现:

#!/bin/bash
for i in $(seq 2 2 100); do
        sed -n ${i}p /etc/passwd | cut -d: -f1
        let i+=2
done

通过命令实现:

sed -n 'n;p' /etc/passwd | cut -d: -f1

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

#!/bin/bash

for i in $(seq 10 19); do
        useradd user$i
        echo "user$i" | passwd --stdin user$i &>/dev/null
        let i++
done
tail -10 /etc/passwd | cut -d: -f1

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

    

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

#!/bin/bash

for i in $(seq 10 19); do
        useradd user$i
        touch /tmp/file$i
        chown user$i.user$i /tmp/file$i
        echo "user$i" | passwd --stdin user$i &>/dev/null
        let i++
done
tail -10 /etc/passwd | cut -d: -f1

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

(0)
dawningdawning
上一篇 2016-10-26
下一篇 2016-10-26

相关推荐

  • 鸟哥?马哥?靠边站!今天猫哥带你玩千万PV级别运维架构实战

    1.哼,从今天开始马哥linux,就是我猫哥的天下了!,马哥你奏凯! 我猫哥在此宣誓,从今以后马哥教育正式更名猫哥教育! 哼,信猫哥,得永生! 2.妹的,都好好给我学习,猫哥我盯着呢 3.猫哥我第一次出镜,给咱来个特写啊小伙,拍的好看了,猫哥就免费给你讲讲Linux运维之道。 4.哎哟,拍的还不赖,猫哥我算是45°角仰望星空了,来来,猫哥给你讲讲互联网运维架…

    Linux干货 2016-04-01
  • 萝卜运维记-第二周

    part2–针对文件命令的介绍,使用,演示 Ⅰ Linux文件管理类命令常用方法 Ⅱ bash的工作特性,相关示例 Ⅲ 文件的元数据有哪些,以及所代表的含义。 Ⅳ 相关命令的操作,和结果演示。 ①Linux文件管理命令常用方法 Linux常见文件类型 -:常规文件;即f; d: directory…

    Linux干货 2016-12-12
  • vim 常见用法、计划任务和脚本初探

    vim的常用方法 gg:跳至首行 G:跳至魔行 dd:删除光标所在行 ndd:删除光标及以下(n-1)行 yy:复制光标所在行 p:把复制行粘贴在光标下一行 P:粘贴在上一行 u:取消上一步操作 /string:查找关键字 n:往下查询 N:往上查询 %s/string1/string2/:把string1替换为string2,后面加g表示全局替换 set&…

    Linux干货 2016-12-04
  • 第十周-Centos启动流程及Shell脚本编程

    一、CentOS启动流程 POST –> Boot Sequence(BIOS) –> Boot Loader (MBR) –> Kernel(ramdisk) –> rootfs –> switchroot –> /sbin/init –…

    2017-10-14
  • Keepalived实现nginx双主

    一、架构描述与应用 1. 应用场景 大多数的互联网公司都会利用nginx的7层反向代理功能来实现后端web server的负载均衡和动静分离。这样做的好处是当单台后端server出现性能瓶颈时可以对其进行横向扩展从而提高整个系统的并发,同时也可以通过后端server提供的http或tcp监控接口对其进行健康检查实现自动Failover和Failback。&n…

    Linux干货 2016-07-16
  • 计算机组成及Linux基础

    计算机组成及Linux基础

    Linux干货 2018-03-04