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

 

原创文章,作者:[email protected],如若转载,请注明出处:http://www.178linux.com/62007

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

相关推荐

  • bash 循环语句while、until练习

    bash 循环语句while、until while练习题          1、求100以内所有正整数之和     2、通过ping命令探测172.16.250.1 – 254范围内的所有主机的在线状态,统计在线主机和…

    Linux干货 2016-08-19
  • 第二十二周作业

    1、请描述本地文件系统和分布式文件系统的特点; 本地文件系统: 本地文件系统主要是指Ext2,Ext3,Btrfs,XFS这类(很难概括,只好举例子),它们通常提供以下功能: 1.扩展性:随着系统容量的增加保持性能,不随容量变化而导致性能震荡。比如一个目录下的海量文件,在EXT2/3中由于目录设计问题会导致较大的性能问题。再比如EXT2/3中的Metadat…

    2017-09-23
  • 脚本初学者

    期待已久的脚本终于在这一周学到了,对于脚本,我感觉就是有两点,第一:考验一个人的思维能力,如果能把你想要的结果用脚本正确的表示出来。第二:以前学的基础命令,怎么组合起来使用。达到以上两点,再难写的脚本都可以写出来的。 一、编写,执行一个脚本        脚本的格式  &nbsp…

    2017-08-05
  • CentOS 7 tomcat 7.0.54 的功能实现及详解

    一、 jdk 安装配置 # yum install java-1.8.0-openjdk-devel (依赖的java-1.8.0-openjdk,java-1.8.0-openjdk,headless也会被安装 ) # alternatives -h # vim /e…

    2016-08-19
  • LVM的创建与管理

    一、基本概念     1、LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。     2、why:通常在安装Linux系统的时候对磁盘进行一盘的分区,一旦日后分区或整个磁盘的空间…

    Linux干货 2016-06-22
  • vim编辑器

    一、vim编辑器简介     文本:ASCII,Unicode     文本编辑种类:     行编辑器:sed     全屏编辑器:nano,vi     v…

    Linux干货 2016-08-10

评论列表(1条)

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

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