vim及脚本

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

    第一步:
    [root@localhost ~]# cp /etc/rc.d/rc.sysinit /tmp
    第二步:
    [root@localhost tmp]# vim rc.sysinit
    在末行模式下输入:
    %s/^[[:space:]]\+[[:space:]]/#&/g 或者
    %s@^[[:space:]]\+[[:space:]]@#&@g

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

    第一步:
    [root@localhost ~]# cp /boot/grub/grub.conf  /tmp
    第二步:
    [root@localhost tmp]# vim grub.conf
    在末行模式下输入:
    %s/^[[:space:]]\+//

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

    [root@localhost tmp]# vim rc.sysinit 
    在末行模式下输入:
    %s/^#[[:space:]]\+//

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

    [root@localhost tmp]# vim grub.conf 
    在末行模式下输入:
    1,3s/^/#&/

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

    [root@localhost ~]# vim /etc/yum.repos.d/CentOS-Media.repo
    在末行模式下输入:
    %s#\(enabled\|gpgcheck\)=0#\1=1#g

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

    [root@localhost ~]# mkdir /backup
    [root@localhost ~]# crontab -e
    0 */4 * * * /bin/cp -a /etc /backup/etc-$(date +\%Y\%m\%d\%H\%M) > /dev/null

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

20150402。

    [root@localhost ~]# mkdir /backup/messages_log
    [root@localhost ~]# crontab -e
    0 0 * * 2,4,6 /bin/cp /var/log/messages /backup/messages_log/messages-$(date +\%Y\%m\%d) > /dev/null

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

    [root@localhost ~]# mkdit /stats
    [root@localhost ~]# crontab -e
    0 */2 * * * /bin/cat /proc/meminfo | grep "^S" >> /stats/memory.txt

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

    [root@localhost ~]# crontab -e
    0 9-18/2 * * 1-5 /bin/echo "howdy"

脚本练习:

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

    #!/bin/bash
    #
    dir=/tmp/testdir-$(date +%m%d%H%M)
        mkdir $dir

    for i in {1..100};do
        touch $dir/file$i
    done

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

    #!/bin/bash
    #
    sed '1d;n;d'  /etc/passwd

3、创建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
            echo "user$i" | passwd --stdin user$i &> /dev/null
        fi
    done

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

    #!/bin/bash
    #
    f=/tmp/file

    for i in {10..19};do
        if [ -f "$f$i" ];then
            echo "File file$i exists"
        else
            touch $f$i
            chown user$i:user$i $f$i
        fi
    done

 

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

(0)
641348038@qq.com641348038@qq.com
上一篇 2016-12-02 16:21
下一篇 2016-12-02 17:52

相关推荐

  • 第一周课程练习

    一、计算机组成及其功能。      计算机系统由硬件系统和软件系统两个部分组成。      硬件系统由运算器、控制器、存储器、输入设备、输出设备组成。           运算器是…

    Linux干货 2016-08-15
  • Homework Week-10 CentOS启动相关及bash脚本编程

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 2、为运行于虚拟机上的CentOS 6添加一块新硬件,提供两个主分区;   (1) 为硬盘新建两个主分区;并为其安装grub;   (2) 为硬盘的第一个主分区提供内核和ramdisk文件; 为第二个分区提供rootfs;   (3) 为rootfs提供…

    Linux干货 2016-10-24
  • VimTutor中文版

        欢  迎   阅   读   《 V I M  教  程 》           …

    Linux干货 2016-08-24
  • 三步走进行IP大揭秘

    跟随博主三步走进行IP大揭秘! 一、IP简介 1.ip地址:可以分为合法ip地址(公网ip地址)和私有ip地址, 合法ip地址主要应用于internet上的主机访问,而私有ip地址应用于局域网中计算机的相互通信。 2.ip地址的表示形式:分为二进制表示和点分十进制表示。 一般使用点分十进制表示,现在通常使用的ip地址长度均为32位,由四个八位域组成,可称为八…

    2017-09-02
  • 快速搭建SVN服务器

    一、背景介绍 svn服务器是一款上传代码的工具(貌似这么说不怎么严谨,但是在日常工作中基本上是这么用的),今天一个小伙伴折腾了一天也没有搭建好这个svn服务器。各种问题,其实搭建SVN服务器最重要的就是三个配置文件(svnserver.conf、 passwd 、authz)。出了问题的话十有八九是这三个配置文件的问题。最后,我自己搭建了一个,测试成功。于是…

    Linux干货 2016-12-11
  • Linux用户及用户组管理

    马哥网络教育22期第三周练习 Linux用户及用户组管理 Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也能帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的…

    Linux干货 2016-09-19

评论列表(1条)

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

    其实后面的问题也可能用多种方法来实现,来扩展知识!