马哥教育网络21期+第6周博客练习

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

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

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

# Let rhgb know that we're leaving rc.sysinit
if [ -x /bin/plymouth ]; then
#    /bin/plymouth --sysinit

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

:%s@\(^[[:space:]]*\)@@g

root (hd0,0) 
kernel /vmlinuz-2.6.32-642.3.1.el6.x86_64 ro root=/dev/mapper/vg_centos6-lv_root rd_NO_LUKS rd_NO_MD rd_LVM_LV=vg_centos6/lv_swap.UTF-8 rd_LVM_LV=vg_centos6/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet crashkernel=auto
initrd /initramfs-2.6.32-642.3.1.el6.x86_64.img

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

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

Let rhgb know that we're leaving rc.sysinit

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

:1,3s@^@#@g

## grub.conf generated by anaconda
##
## Note that you do not have to rerun grub after making changes to this file

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

:%s@enabled=0@enabled=1@ 
:%s@gpgcheck=0@gpgcheck=1@

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

crontab -e
1 */4 * * * /usr/bin/cp /etc /backup/etc-$(date +\%Y\%m\%d\%H\%M)

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

crontab -e
1 1 * * 2,4,6 /usr/bin/cp /var/log/messages /backup/messages_logs/messages-$(date +\%Y\%m\%d)

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

1 *2 * * * /bin/cat /proc/meminfo |grep '^[sS].*' >> /stats/memory.txt

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

1 */2 * * 1-5 bin/echo "howdy"

脚本编程练习

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

[root@CentOS6 ~]# mkdir /tmp/testdir-$(date +%F)

11、在此目录创建100个空文件:file1-file100

[root@CentOS6 ~]# for((i=1;i<=100;i++)) do touch file${i}; done
[root@CentOS6 ~]# ls
file100  file17  file23  file3   file36  file42  file49  file55  file61  file68  file74  file80  file87  file93 
file11   file18  file24  file30  file37  file43  file5   file56  file62  file69  file75  file81  file88  file94
file12   file19  file25  file31  file38  file44  file50  file57  file63  file7   file76  file82  file89  file95
...

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

[root@CentOS6 ~]# sed -n 'n;p' /etc/passwd|awk -F: '{print $1}'
bin
adm
sync

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

#!/bin/bash
#
for i in {10..19};do
        useradd user$i
        echo "user$i" |passwd --stdin user$i
done

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

#!/bin/bash
#
for((i=10;i<=19;i++))
do
touch /tmp/file$i
done

15、把file10的属主和属组改为user10,依次类推。

#!/bin/bash
#
for((i=10;i<=19;i++))
do
chown user${i}:user${i} /tmp/file$i
done

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

(0)
sandiegoitsandiegoit
上一篇 2016-08-15 11:59
下一篇 2016-08-15 11:59

相关推荐

  • 学习宣言

    不积跬步无以至千里,不积小流无以成江海。 在Linux的世界,我还只是一个顽童,我会通过我的努力证明,我可以攀登峻峰,笑看风云!

    Linux干货 2016-12-28
  • 实验删除分区表

    首先我们先对分区表做个备份 dd if=/dev/sda of=/app/mbr bs=1 count=512 把备份考到另一台设备上,不拷贝的话这台设备开不了机无法使用备份的文件 清除分区表 接下来需要在客户端操作 使用光盘救援模式启动 启用网络 选网卡 自动获取ip后默认下一步 接下来就是把刚刚拷到另一台设备上的文件拷贝回来   注:这是在光盘的根目录下…

    2017-12-05
  • 如何安装VMware Workstation

    1、打开安装包,直接点击“下一步” 2、选择接受条款,单击“下一步” 3、选择安装路径,单击“下一步” 4、单击“下一步”,也可以勾选掉两个选项   5、单击“下一步”   6、点击“安装”   7、完成安装  

    2017-07-11
  • Linux Shell基础脚本示例

    1、编写脚本/root/bin/systeminfo.sh,显示主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小.   2、编写脚本/root/bin/backup.sh,可实现自动将/etc/目录备份到/root/etcYYYY-mm-dd中.   3、编写脚本/root/bin/disk.…

    Linux干货 2016-08-15
  • linux网络管理 一

    什么是网络?         是指将具有独立功能的计算机和周边设备,通过通信线路连接起来,在网络软件的支持下,实现资源的共享和数据的整个系统。 网络的特征:         速度      …

    2017-03-16
  • CentOS系统安装

    centos系统安装        安装程序:anaconda,Anaconda是RedHat、CentOS、Fedora等Linux的安装管理程序。它可以提供文本、图形等安装管理方式,并支持Kickstart等脚本提供自动安装的功能。此外,其还支持许多启动参数,熟悉这些参数可为安装带来很多方便。该程序的功能是把位于光…

    Linux干货 2016-09-23

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-07 17:53

    完成的非常的好,8题差一个”/”, 1 */2 * * * ,9题差一个工作时间哈,加油!