第六周练习

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

相关推荐

  • Linux虚拟网络接口-Bonding 配置

    一、bonding 的定义     bonding是通过将同一设备的多个物理网卡绑定到一个虚拟网卡上,再对外提供连接。对于外端来说,多个物理网卡共享虚拟网卡的IP和mac地址,也就表现为一个网卡设备。通过bonding技术可以实现高可用或者负载均衡。     bonding有7种工作模式:&nbsp…

    Linux干货 2017-07-02
  • linux添加用户

    今天给大家说一下linux添加用户,大家可能觉得添加用户很简单,’adduser 用户名’就这个命令搞掂了。那么大家知道这个命令帮我们完成了那些事情呢,今天就给大家普及一下 添加一个linux用户需要关系到以下几个文件: 保存用户组的/etc/group文件。 保存用户ID和密码的/etc/passwd文件。 在home目录下生产一个…

    Linux干货 2017-05-28
  • Hadoop Hive与Hbase整合+thrift

    1.  简介 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。 Hive与HBas…

    Linux干货 2015-04-13
  • Nginx

    Nginx简介     Nginx(”engine x”)是俄罗斯人Igor Sysoev(伊戈尔.塞索耶夫)编写的一款高性能的HTTP和反向代理服务器。Nginx能够选择高效的epoll、Kqueue、eventport作为网络I/O模型,在高连接并发的情况下,Nginx是Apache服务器不错的替代品,它能够支持高…

    2017-05-07
  • 集中管理利器-puppet快速入门-下

    Puppet配置 1.    文件管理 file 文件服务器写法: /etc/puppet/ fileserver.conf 定义 [files] path /tmp/files  ## puppet数据存放目录 =è后面远程备份实战会用到 allow *.example.com 实战1: 备份master机…

    Linux干货 2015-05-07
  • N21_第四周

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 # cp -a /etc/skel/ /home/user1/ && chmod -R 7000 /home/user…

    Linux干货 2016-08-02