第六周练习

请详细总结vim编辑器的使用并完成以下练习题 
1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;

1.[root - www ~]#>cp /etc/rc.d/rc.sysinit /tmp/
2.[root - www ~]#>vi /tmp/rc.sysinit
1.#末行模式下下输入如下命令进行替换
2.:%s@\(^[[:space:]]\+.*\)@#\1@

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

1.[root - www ~]#>cp /boot/grub/grub.conf /tmp/
2.[root - www ~]#>vi /tmp/grub.conf
1.#末行模式下下输入如下命令进行替换
2.:%s@^[[:space:]]\+@@

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

1.[root - www ~]#>vi /tmp/rc.sysinit 
1.:%s@^#[[:space:]]\+\(.*\)@\1@

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

1.[root - www ~]#>vi /tmp/grub.conf 
1.#末行模式下下输入如下命令进行替换
2.:1,3s@^\(.*\)@#\1@

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

1.[root - www ~]#>cp /etc/yum.repos.d/CentOS-Media.repo /tmp/
2.[root - www ~]#>vi /tmp/CentOS-Media.repo
1.#末行模式下下输入如下命令进行替换
2.:%s@enabled=0@enabled=1@

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

1.[root - gwx ~]#>crontab -e
1.0 */4 * * * tar JPcf  /backup/etc-`date +\%Y\%m\%d\%H\%M`.tar.xz /etc
2.

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

1.[root - gwx ~]#>crontab -e
1.0 0 * * 2,4,6 tar JPcf /backup/messages_logs/messages-`date +\%Y\%m\%d` /var/log/messages

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

1.[root - gwx ~]#>crontab -e
1.0 */2 * * * grep -E ^S.* /proc/meminfo  > /stats/memory.txt

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

1.[root - gwx ~]#>crontab -e
1.0 */2 * * 1-5 echo "howdy"

脚本编程练习 
10、创建目录/tmp/testdir-当前日期时间; 
11、在此目录创建100个空文件:file1-file100 
12、显示/etc/passwd文件中位于第偶数行的用户的用户名; 
13、创建10用户user10-user19;密码同用户名; 
14、在/tmp/创建10个空文件file10-file19; 
15、把file10的属主和属组改为user10,依次类推。

1.#!/bin/bash
2.mkdir /tmp/testdir-`date +%Y%m%d%H%M`
3.cd /tmp/testdir-`date +%Y%m%d%H%M`
4.for ((i=1;i<=100;i++));do
5.   mkdir file$i
6.done
7.sed -n '2~2p' /etc/passwd |cut -d: -f1
8.for ((j=10;j<=19;j++)) ;do
9.    if id user$j ;then
10.        echo "user$j exists."
11.        if [ -e /tmp/file$j ];then
12.            echo "/tmp/file$j exists."
13.            chown user$j:user$j /tmp/file$j
14.        else
15.            touch /tmp/file$j
16.            chown user$j:user$j /tmp/file$j
17.        fi
18.    else
19.        useradd user$j
20.        echo "user$j" |passwd --stdin user$j
21.        if [ -e /tmp/file$j ];then
22.            echo "/tmp/file$j exists."
23.            chown user$j:user$j /tmp/file$j
24.        else
25.            touch /tmp/file$j
26.            chown user$j:user$j /tmp/file$j
27.        fi                      
28.    fi
29.done

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

(0)
N24-wenxuanN24-wenxuan
上一篇 2016-12-11 16:45
下一篇 2016-12-11 17:27

相关推荐

  • ​ 基于Sentinel实现redis主从自动切换

    Sentinel(哨兵)是用于监控redis集群中Master状态的工具,它可以实现对redis的监控、通知、自动故障转移。 Sentinel作用: Master状态检测 当被监控的某个 Redis Master异常无法连接时 Sentinel 可以向系统管理员发送通知, 也可以通过 API 向其他程序发送通知,并且进行Master-Slave切换,将其中一…

    Linux干货 2016-02-14
  • 从需求和安全角度开始linux(一)-20151211

    突然想从需求和安全的角度来展开各种命令。因为我觉得linux中所有的常用命令基本都是需求和安全的产物。 当我打开一个CLI(command line interface)界面的linux操作系统时: 一、我希望能够看到里面有什么,因此有了ls的命令。      ls – list&nbs…

    Linux干货 2015-12-15
  • Linux系统上获取命令的帮助信息方法

    当我们在操作linux时忘记相关命令的用法时,可以使用man 命令或者命令 -h来查询该命令的用法; man文档共有9个章节 1:所有用户可以操作的指令或可执行文件 2:系统核心调用的函数与工具 3:子调用,常用的函数与函数库 4:设备,硬件文件说明,通常是/dev/的文件 5:文件格式,配置文件或者是某些档案的格式 6:游戏相关 7:杂项,例如linux文…

    Linux干货 2018-03-04
  • DNS服务器之理论基础

    一、什么是DNS     DNS全称为Domain Name System,即域名系统,其作用就是将我们经常使用的“网址”解析为IP地址。     在互联网上通信需要借助于IP地址,但人类对于数字的记忆能力远不如文字,那么将IP地址转换成容易记忆的文字是个好办法,可是计算机只能识…

    Linux干货 2015-04-29
  • vim文本编辑器简单用法

    vim最基础的用法

    2017-09-09
  • 马哥教育网络班20期+第2周课程练习

    马哥教育网络班20期+第2周课程练习 练习题: 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。3、请使用命令行展开功能来完成以下练习:   (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d  …

    Linux干货 2016-06-23