马哥教育网络班21期第6周课程练习

一、vim编辑器的使用

VIM使用.png

二、练习题

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

[root@www ~]# cp /etc/rc.d/rc.sysinit /tmp
[root@www ~]# ls /tmp
copyfstab  inittab  rc.sysinit  src  yum.log
[root@www ~]# vim /tmp/rc.sysinit 
-bash: vim: command not found
[root@www ~]# yum install -y vim
[root@www ~]# !vim
:%s/^[[:space:]]/#&/

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

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

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

[root@www ~]# vim /tmp/rc.sysinit
:%s/^#[[:sapce:]]\+//

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

[root@www ~]# vim /tmp/grub.conf 
:1,3s/^/#&/g

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

[root@www tmp]# vim CentOS-Media.repo 
:%s/=0/=1/g

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

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

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

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

6-9说明如下:

[root@www tmp]# crontab -e
[root@www tmp]# crontab -l
0 */3 * * * root cp -a -r /etc /backup/messages_logs/etc-`date +%Y%m%d%H%M`
0 * * * 2,4,6 root cp -a -r /var/log/messages /backup/messages_logs/messages-`date +%Y%m%d`
0 */2 * * * root grep -i ^s /proc/meminfo &>>/stats/memory.txt
0 6-18/2 * * 1-5 root echo "howdy"

三、脚本编程练习

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

[root@www tmp]# mkdir /tmp/test-`date +%Y%m%d%H%M`

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

[root@www tmp]# cd test-201608130946/
[root@www test-201608130946]# touch file{1..100}
[root@www test-201608130946]# ls
file1    file13  file18  file22  file27  file31  file36  file40  file45  file5   file54  file59  file63  file68  file72  file77  file81  file86  file90  file95
file10   file14  file19  file23  file28  file32  file37  file41  file46  file50  file55  file6   file64  file69  file73  file78  file82  file87  file91  file96
file100  file15  file2   file24  file29  file33  file38  file42  file47  file51  file56  file60  file65  file7   file74  file79  file83  file88  file92  file97
file11   file16  file20  file25  file3   file34  file39  file43  file48  file52  file57  file61  file66  file70  file75  file8   file84  file89  file93  file98
file12   file17  file21  file26  file30  file35  file4   file44  file49  file53  file58  file62  file67  file71  file76  file80  file85  file9   file94  file99

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

[root@www test-201608130946]# sed -n 'n;p' /etc/passwd

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

[root@www tmp]# cat useradd-test.sh 
#!/bin/bash

for i in {10..19};do
	useradd user$i && echo "user$i" | passwd --stdin user$i
	echo "user$i created!"
done

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

[root@www tmp]# cat touchfile-test.sh 
#!/bin/bash

for i in {10..19};do
        touch file$i
	echo "file$i created!"
done

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

[root@www tmp]# cat touchfile-test.sh 
#!/bin/bash

for i in {10..19};do
        chown file$i user$i:user$i
	echo "chown file$i ok!"
done

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

(0)
N21-孟然N21-孟然
上一篇 2016-08-15 12:06
下一篇 2016-08-15 12:06

相关推荐

  • bash脚本编程基础知识

    shell脚本语言编程之bash shell简介 什么是shell:     shell是Linux的用户界面,提供了用户与内核进行交互的接口,他接收了用户的指令,并将指令送入内核去执行     shell即是一种高级程序语言,也是一种命令解析语言   &nb…

    Linux干货 2016-08-15
  • Linux 基础知识

    1、环境变量 2、帮助 3、时间 4、引用 5、命令历史 6、FHS 7、命令别名 8、Globbing文件名通配 9、命令,路径补全 10、快捷键 ============================================ shell:是用户和linux(或者kernel)之间的接口程序,你在提示符下输入的每个命令都先由shell解释(命令语…

    Linux干货 2016-06-09
  • N28-第四周:正则表达式练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。
    2、编辑/etc/group文件,添加组hadoop。
    3、手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。
    4、复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。
    5、修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。
    6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式;
    7、显示/etc/passwd文件中其默认shell为非/sbin/nologin的用户;
    8、显示/etc/passwd文件中其默认shell为/bin/bash的用户;
    9、找出/etc/passwd文件中的一位数或两位数;
    10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;
    11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;
    12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行;
    13、添加用户bash, testbash, basher, nologin (此一个用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息;

    2017-12-24
  • ​文本编辑器nano

    新建/打开文件     nano 路径+文件名,文件存在则为打开,否则新建;(未输入文件名,编辑完成后,保存退出会提示输入文件名); nano     note:nano中,黑底白字表示快捷键操作。其中“^”表示Ctrl键,则Ctrl+G就表示成“^G”。“M”表示 Alt键,则Alt+W表示为“M…

    Linux干货 2016-05-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-07 22:40

    排版非常的漂亮,图片知识点总结的非常棒,6题是每隔4小时,7题还需要确定到小时,你的答案是每周2,4,6的每小时的0分执行,加油!