zoukankan      html  css  js  c++  java
  • Linux+Python高端运维班第六周作业

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;
     
     
        [root@localhost tmp]# cp /etc/rc.d/rc.sysinit /tmp
        [root@localhost tmp]# ls /tmp
        rc.sysinit
        [root@localhost tmp]# vim /tmp/rc.sysinit  
        :%s/^[[:space:]]/#&/
     
     
    2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符;
     
     
        [root@localhost grub]# cp /boot/grub/grub.conf /tmp/grub.conf
        [root@localhost grub]# ls
        grub.conf
        [root@localhost grub]# vim /tmp/grub.conf
        :%s/^[[:space:]]+//g
     
     
    3、删除/tmp/rc.sysinit文件中的以#开头,且后面跟了至少一个空白字符的行行的#和空白字符
     
     
        [root@localhost tmp]# vim rc.sysinit
        :%s/^#[[:space:]]+//g
     
     
    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=0/enabled=1/
        :%s/gpgcheck=0/gpgcheck=1/
     
     
    6、每4小时执行一次对/etc目录的备份,备份至/backup目录中,保存的目录名为形如etc-201608300202
     
     
        [root@localhost ~]# crontab -e
        # 0 */4 * * * /bin/cp -a /etc/ /backup/etc-$(date +%Y%m%d%H%M)
     
     
    7、每周2,4,6备份/var/log/messages文件至/backup/messages_logs/目录中,保存的文件名形如messages-20160830
     
     
    [root@localhost ~]#crontab -e
    0 0 * * 2,4,6 cp /var/log/messages /backup/messages_logs/messages-`date +\%Y\%m\%d
     
     
    8、每天每两小时取当前系统/proc/meminfo文件中的所有以S开头的信息至/stats/memory.txt文件中
     
     
        [root@localhost ~]#crontab -e
        0 */2 * * * grep "^S" /proc/meminfo >> /stats/memory.txt
         
     
    9、工作日的工作时间内,每两小时执行一次echo "howdy"
     
     
        [root@localhost ~]#crontab -e
        0 */2 * * 1-5 echo "howdy
     
     
    脚本编程练习
     
     
    10、创建目录/tmp/testdir-当前日期时间;
     
     
        [root@localhost ~]# vim yicx
        #!/bin/bash
        #
        mkdir -p /tmp/testdir-`date +\%Y\%m\%d\%H\%M`
        [root@localhost ~]# ls -l /tmp
        总用量 0
        drwxr-xr-x. 2 root root 6 9月  12 20:26 testdir-201609122026
          
    11、在此目录创建100个空文件:file1-file100
     
     
        [root@localhost ~]# vim yicx01
        [root@localhost ~]# ./yicx01
        [root@localhost ~]# ls
        file1    file2   file30  file41  file52  file63  file74  file85  file96
        file10   file20  file31  file42  file53  file64  file75  file86  file97
        file100  file21  file32  file43  file54  file65  file76  file87  file98
        file11   file22  file33  file44  file55  file66  file77  file88  file99
        file12   file23  file34  file45  file56  file67  file78  file89  yicx
        file13   file24  file35  file46  file57  file68  file79  file9   yicx01
        file14   file25  file36  file47  file58  file69  file8   file90
        file15   file26  file37  file48  file59  file7   file80  file91
        file16   file27  file38  file49  file6   file70  file81  file92
        file17   file28  file39  file5   file60  file71  file82  file93
        file18   file29  file4   file50  file61  file72  file83  file94
        file19   file3   file40  file51  file62  file73  file84  file95
        [root@localhost ~]# cat yicx01
        #!/bin/bash
        #
        for in {1..100};do
         touch file$i
        done
     
     
    12、显示/etc/passw d文件中位于第偶数行的用户的用户名;
     
        [root@localhost ~]# vim yicx02
         
        #!/bin/bash
        #
        j=$(wc -l /etc/passwd cut -d' ' -f1)
        for in $(seq 2 2 $j)
        do
                head -n $i /etc/passwd tail -n 1 | cut -d':' -f1
                 
        [root@localhost ~]# ./yicx02
        bin
        adm
        sync
        halt
        operator
        ftp
        systemd-bus-proxy
        dbus
        abrt
        tss
        usbmuxd
        saslauth
        rpc
        chrony
        qemu
        rpcuser
        avahi-autoipd
        sssd
        gdm
        sshd
        postfix
        yicx
     
     
    13、创建10用户user10-user19;密码同用户名;
        [root@localhost ~]# vim yicx03.sh
        #!/bin/bash
         
        for in {10..19};do
            useradd user$i && echo "user$i" passwd --stdin user$i
            echo "user$i created!"
        done
         
        [root@localhost ~]# bash yicx03.sh 
        更改用户 user10 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user10 created!
        更改用户 user11 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user11 created!
        更改用户 user12 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user12 created!
        更改用户 user13 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user13 created!
        更改用户 user14 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user14 created!
        更改用户 user15 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user15 created!
        更改用户 user16 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user16 created!
        更改用户 user17 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user17 created!
        更改用户 user18 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
        user18 created!
        更改用户 user19 的密码 。
        passwd:所有的身份验证令牌已经成功更新。
         
     
    14、在/tmp/创建10个空文件file10-file19;
     
     
        [root@localhost ~]# bash yicx04.sh
        file10 created!
        file11 created!
        file12 created!
        file13 created!
        file14 created!
        file15 created!
        file16 created!
        file17 created!
        file18 created!
        file19 created!
        [root@localhost ~]# cat yicx04.sh 
        #!/bin/bash
        #
        for in {10..19};do
         touch file$i
            echo "file$i created!"
        done
     
      
    15、把file10的属主和属组改为user10,依次类推。
     
     
        [root@localhost ~]# vim yicx05.sh
        [root@localhost ~]# bash yicx05.sh 
        [root@localhost ~]# ll 
        总用量 20
        -rw-------. 1 root   root   1287 9月   7 05:10 anaconda-ks.cfg
        -rw-r--r--. 1 user10 user10    0 9月  12 21:23 file10
        -rw-r--r--. 1 user11 user11    0 9月  12 21:23 file11
        -rw-r--r--. 1 user12 user12    0 9月  12 21:23 file12
        -rw-r--r--. 1 user13 user13    0 9月  12 21:23 file13
        -rw-r--r--. 1 user14 user14    0 9月  12 21:23 file14
        -rw-r--r--. 1 user15 user15    0 9月  12 21:23 file15
        -rw-r--r--. 1 user16 user16    0 9月  12 21:23 file16
        -rw-r--r--. 1 user17 user17    0 9月  12 21:23 file17
        -rw-r--r--. 1 user18 user18    0 9月  12 21:23 file18
        -rw-r--r--. 1 user19 user19    0 9月  12 21:23 file19
        -rw-------. 1 root   root   1335 9月   6 21:20 initial-setup-ks.cfg
        -rw-r--r--. 1 root   root    132 9月  12 21:20 yicx03.sh
        -rw-r--r--. 1 root   root     82 9月  12 21:23 yicx04.sh
        -rw-r--r--. 1 root   root     72 9月  12 21:28 yicx05.sh
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 公共
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 模板
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 视频
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 图片
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 文档
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 下载
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 音乐
        drwxr-xr-x. 2 root   root      6 9月  12 21:00 桌面
        [root@localhost ~]# cat yicx05.sh 
        #!/bin/bash
        #
        for in {10..19};do
        chown user$i:user$i file$i
        done
  • 相关阅读:
    设计模式之工厂模式
    面向对象的五大原则
    抽象类和接口、类库
    静态
    面向对象三大特性
    JVM(Java虚拟机)优化大全和案例实战
    Java调用Lua脚本(LuaJava使用、安装及Linux安装编译)
    Java调用.dll文件
    linux yum命令详解
    linux nohup命令
  • 原文地址:https://www.cnblogs.com/php-rearch/p/5898584.html
Copyright © 2011-2022 走看看