第六周作业

一、Vim编辑器练习:

用Vim编辑器做下面的练习,我的Linux系统(CentOS 6.9)安装了精简版系统,没有Vim编辑器。

a、设置Yum源为网易开源镜像站

b、选择对应“镜像名”,到对应的“CentOS使用说明”里面查看内容

c、看着CentOS说明操作就可以了

d、使用说明

首先备份/etc/yum.repos.d/CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
下载对应版本repo文件, 放入/etc/yum.repos.d/(操作前请做好相应备份)
CentOS7
CentOS6
CentOS5
运行以下命令生成缓存
yum clean all
yum makecache

e、安装Vim编辑器因为。# yum install vim -y

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

Vim:%s/^[[:space:]]/#/ 

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

Vim:%s@^[[:space:]]\+@@

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

Vim:%s@^#\([[:space:]]\+\)@1@g

4、为/tmp/rc.sysinit文件中前三行的行首加*号;

Vim:1,3s@\(.*\)@*\1@g

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

Vim:%s@\(enabled=\|gpgcheck=\)0@\11@g

二、Linux计划定时任务练习:

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

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

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

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

创建一个目录
mkdir  -pv /tmp/backup/messages_logs
创建一个文件
touch -v /tmp/backup/memory.txt
crontab -e

0 */4 * * * /bin/cp -a /etc /tmp/backup/etc-$(date +\%Y\%m\%d\%H\%M)
0 0 * * 2,4,6 /bin/cp /var/log/messages /tmp/backup/messages_logs/messages-$(date +\%Y\%m\%d)
0 */2 * * * /bin/grep "^S" /proc/meminfo >> /tmp/backup/memory.txt
0 8-12/2 * * 1-5 /bin/echo "howdy"
0 14-18/2 * * 1-5 /bin/echo "howdy"

三、脚本练习:

1、创建目录/tmp/testdir-当前日期时间

#!/bin/bash
# name:wing-PC
# date:2017.08
# magedu  script test-32
dir="testdir-$(date +\%Y\%m\%d\%H\%M)"
    mkdir -v  /tmp/$dir


[root@wing-6 tmp]# bash test-32 
mkdir: 已创建目录 "/tmp/testdir-201708220318"

2、在此目录创建100个空文件:filel-file100

#!/bin/bash
# name:wing-PC
# date:2017.08
# magedu  script test-33
dir="testdir-$(date +\%Y\%m\%d\%H\%M)"
    mkdir -v  /tmp/$dir
for i in {1..100}; do
    touch /tmp/$dir/file$i
done
[root@wing-6 tmp]# ls testdir-201708220324/ | wc
    100     100     692

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

#!/bin/bash
# name:wing-PC
# date:2017.08
# magedu  script test-34
max=$(wc -l /etc/passwd | cut -d " " -f 1)

for i in $(seq 1 $max); do
    n=$[ $i%2 ]
    if [ "$n" -eq "0" ];then           
            echo -e "\n$(head -n $i /etc/passwd | tail -n 1 | cut -d ":" -f 1)"
    fi
done

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

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code