第六周练习

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

相关推荐

  • 作业权限管理

    一、在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。 首先创建三个组g1,g2,g3,题目要求在/data/testdir目录里创建的文件自动属于g1组那么首先要将这个目录的属组改为g1,然后通过更改…

    Linux干货 2016-08-03
  • Nginx相关配置及其应用

    LB Cluster: 传输层:lvs、nginx、haproxy 应用层:nginx(http, https, smtp, pop, imap), haproxy(http), httpd(http/https), ats, perlbal, pound, … nginx load balancer: tcp/udp   nginx …

    Linux干货 2016-11-11
  • 胡说八道计算机网络之什么是网络(一)?

    胡说八道计算机网络之什么是网络(一) 什么是网络? 网络通信的实现:tcp/ip协议 使用Wireshark抓包分析tcp/ip协议栈 什么是网络?      所谓网络,就是通过一定的形式连接起来的物体,物体与物体之间可以实现通信。     比如这样的,就称为计算机网络。它可以实现计算机之…

    Linux干货 2017-05-01
  • 马哥教育网络班N22期+第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bashnolo_user=0login_user=0while read user;do    bash_type=$(e…

    Linux干货 2016-10-21
  • 十一.Linux博客-2016年8月14日if、case、find

    格式说明: 操作 概念 命令 说明及举例 十一.if、case、find if 单分支if开头+条件+then+fi结尾双分支 if else fi多分枝 if elif else fi case case $num in1|3|5)echo xxx;;2|4|5)echo yyy;;*)echo nullesac 多用于离散数值匹配 文件查找和压缩 文件系…

    Linux干货 2016-08-24
  • 于浩的第一篇随笔

    人生只有两件事,努力工作,享受生活!

    2018-03-26