第六周练习

请详细总结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

相关推荐

  • bash脚本编程实例

    bash脚本编程实例 1.写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态 在线的主机使用绿色显示 不在线的主机使用红色显示 #!/bin/bash for i in {1..254};do if /bin/ping -W 1 -c 1 172.16.250.${i} >> /dev/…

    Linux干货 2017-08-20
  • 马哥教育网络班21期+第7周课程练习

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

    Linux干货 2016-08-30
  • 数组

    一.数组 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合。 索引:编号从0 开始,属于数值索引  注:索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引,bash4.0 版本之后开始支持,bash 的数组支持稀疏格式(索引不连续) 二.数组的声明 declare -a ARRAY_NAME decla…

    Linux干货 2016-11-23
  • HAproxy reload config file with uninterrupt session

    HAProxy is a high performance load balancer. It is very light-weight, and free, making it a great option if you are in the market for a load balancer and need to keep your cos…

    Linux干货 2015-04-03
  • linux获取”命令帮助“

    一、相关术语:         外部命令:一个可执行程序,位于文件系统某目录下;是系统为了完善各种功能而加入的程序。         内部命令:系统shell程序的部分程序。内部命令执行速度非常快,其…

    Linux干货 2016-06-09
  • sed和awk和数组实践-week15

    1、总结sed和awk的详细用法; (1) sedsed:Stream EDitor,流编辑器,行编辑器 基本原理:一次从文本中读取一行,放到sed自己的工作车间加工, 该工作车间叫做模式空间(pattern space)判断该行是否符合过滤模式, 如果符合过滤模式: 送往标准输出(终端) 执行编辑操作, 从模式空间中处理以后,处理过后送到标准输出(不一定有…

    Linux干货 2017-05-06