马哥教育网络班21期第六周作业

详细总结VIM编辑器的使用并完成以下练习题

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

cp /etc/rc.d/rc.sysinit /tmp
vim /tmp/rc.sysinit
:%s/^[[:space:]]\+/#/g

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

cp /boot/grub/grub.conf /tmp
vim /tmp/grub.conf
:%s@^[[:space:]]\+@@g

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

:%s@^#[[:space:]]\+@@g

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

:1,3s/^/#/g

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

:%s/\<enabled=0\>/enabled=1/g
:%s/\<gpgcheck=0\>/gpgcheck=1/g

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

# mkdir /backup
# crontab -l
0 */4 * * * /bin/cp -a /etc/ /backup/etc-$(date +%Y%m%d%H%M) &>/dev/null

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

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


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

0 */2 * * * /bin/egrep '^(S|s)' /proc/meminfo >> /stats/memory.txt &>/dev/null

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

0 8-18/2 * * 1-5 /bin/echo "howdy" &>/dev/null

脚本练习题

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

[root@rhel-6 test]# cat test1.sh
#!/bin/bash
TestDir=/tmp/testdir-$(date +%Y%m%d%H%M)
TestLog=${TestDir}/failure.log
mkdir ${TestDir} &>/dev/null
[[ $? -eq 0 ]] && echo "Create ${TestDir} success."
for (( i = 1; i < 101; i++ )); do
        touch ${TestDir}/file$i || echo "Failure:file$i" >> ${TestLog}
done
if [[ -s "${TestLog}" ]]; then
        cat ${TestLog}
else
        echo 'Create file1-file100 success.'
fi
[root@rhel-6 test]# sh test1.sh
Create /tmp/testdir-201608132309 success.
Create file1-file100 success.

12、显示/etc/passwd文件中谓语第偶数行的用户的用户名

[root@rhel-6 test]# cat test2.sh
#!/bin/bash
NO_passwd=$(cat /etc/passwd | wc -l)
echo 'The UserName list is:'
#for (( i = 0; i <= ${NO_passwd}; i+=2 )); do
for i in $(seq 2 2 ${NO_passwd});do
        head -n $i /etc/passwd | tail -n 1 | cut -d':' -f1
done
[root@rhel-6 test]# sh test2.sh
The UserName list is:
bin
adm
...
...

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

[root@rhel-6 test]# cat test3.sh
#!/bin/bash
for i in {10..19}; do
        id user$i &>/dev/null
        if [[ $? -eq 0 ]]; then
                echo "user$i exist."
                echo user$i | passwd --stdin user$i &>/dev/null
                [[ $? -eq 0 ]] && echo "user$i password change success." || echo "user$i password change failed."
        else
                useradd user$i
                echo "user$i" | passwd --stdin user$i &>/dev/null
                [[ $? -eq 0 ]] && echo "Create user$i success." || echo "Creat user$i failure."
        fi
done
[root@rhel-6 test]# useradd user13
[root@rhel-6 test]# sh test3.sh
Create user10 success.
...
user13 exist.
user13 password change success.
Create user14 success.
...

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

[root@rhel-6 test]# cat test4.sh#!/bin/bashTmpFile=/tmp/filefor i in {10..19}; do        if [[ -f "${TmpFile}$i" ]]; then                echo "${TmpFile}$i exist."                chown user$i:user$i ${TmpFile}$i && echo "${TmpFile}$i: owner and group change to user$i:user$i"        else                touch "${TmpFile}$i"                 if [[ $? -eq 0 ]]; then                        echo "${TmpFile}$i create success."                        chown "user$i:user$i" ${TmpFile}$i && echo "${TmpFile}$i: owner and group change to user$i:user$i"                else                        echo "${TmpFile}$i create failure."                fi        fi     done[root@rhel-6 test]# touch /tmp/file12[root@rhel-6 test]# sh test4.sh/tmp/file10 create success./tmp/file10: owner and group change to user10:user10/tmp/file11 create success./tmp/file11: owner and group change to user11:user11/tmp/file12 exist./tmp/file12: owner and group change to user12:user12......

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

(0)
N21-chenggbN21-chenggb
上一篇 2016-08-22
下一篇 2016-08-22

相关推荐

  • Linux运维学习历程-第五天-Linux文件系统与管理

    Linux运维学习历程-第五天-Linux文件系统与管理 本章内容 文件系统  文件和目录被组织成一个单根倒置树结构从根目录下开始,用“/” 表示根文件系统(rootfs) :root filesystem,用路径分隔的 /;遵循FHS: (Filesystem Hierarchy Standard)  文件系统分层结构:LSB Linu…

    Linux干货 2016-08-04
  • Linux系统启动基本流程

    Linux开机流程 如下图 00×01、BISO自检     硬件检查,检查硬件完整性,之后从开机BIOS开机硬件列表选择BOOT设备     2. 00×02、MBR引导     从bootloader446…

    2017-07-09
  • 如何实现本地yum源的共享

    上一篇关于Linux yum客户端的配置的博客,介绍了如何通过修改本机yum配置文件来访问网络或者本地的yun sever, 本文就来介绍一下,如何把我们的本地RPM包像yum sever一样通过http或ftp网络方式共享出去。 一、准备好发行版光盘,包,元数据    CentOS-6.8-x86_64-bin-DVD1.iso二、准备…

    2017-06-17
  • 第七周作业

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;        (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [ro…

    2017-04-05
  • CentOS 系统自动化安装

    CentOS 系统自动化安装 概述:     系统安装过程     配置anaconda     自动化安装系统 CentOS 系统安装: 1.启动流程: bootloader–>kernel(initrd)–>rootfs–>anaconda(…

    Linux干货 2016-09-21
  • 第八周-Linux网络配置,软件安装,bash编程

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别 网桥:一种网络设备,负责网络桥接(network bridging)之用。桥接器将网络的多个网段在数据链路层(OSI模型第2层)连接起来(即桥接)。 集线器(Hub):是指将多条以太网双绞线或光纤集合连接在同一段物理介质下的设备。集线器是运作在OSI模型中的物理层。 二层交换机:工…

    Linux干货 2016-11-14

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-22 15:07

    写的很好,排版也很棒,加油