N26第六周博客作业

请详细总结vim编辑器的使用并完成以下练习题

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

 

cp /etc/rc.d/rc.sysinit
/tmp

 

 

 

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

:%s@^[[:space:]]\+@@

 

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

:%s@^#[[:space:]]\+@@g

 

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

:1,3s@^[[:space:]]\+@#&@g

 

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

:%s@\(enabled\|gpgcheck\)=0@\1=1@g 

                                                                             

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

crontab -e 进入编辑界面

0 */4 * * *
cp -a /etc /backup/etc-‘date +\%Y\%m\%d\%H\%M’

 

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

crontab -e 进入编辑界面

0 0 * * 2,4,6
 /bin/cp -a /var/log/messages
/backup/messages_logs/messages-$(date +\%Y\%m\d)

 

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

crontab -e 进入编辑界面

0 */2 * * * 
/bin/cat /proc/meminfo | /bin/grep “^S” >>
/stats/memory.txt

 

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

crontab -e 进入编辑界面

0 9-17/2 * *
1-5 /bin/echo “howdy”

 

脚本编程练习

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

 

#!/bin/bash

#

Time=$(date
+%F-%T)

mkdir
/tmp/testdir-“$Time”

 

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

#!/bin/bash

#

Time=$(date
+%F-%T)

mkdir
/tmp/testdir-“$Time”

cd /tmp/testdir-“$Time”

for i in
$(seq 1 100) ; do

        if 
[ -f file$i ] ; then

                echo “file$i is
exist”

        else

                touch file$i

        fi

done

 

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

sed -n ‘2~2p’
/etc/passwd  | awk -F: ‘{print $1}’

 

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

 

#!/bin/bash

#

for i in
{10..19} ; do

        if id user”$i” >/dev/null
2>&1 ; then

                echo “user$i is
exist!”

        else

               useradd user$i

               echo “user$i” | passwd
–stdin user$i >/dev/null 2>&1

        fi

done

 

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

#!/bin/bash

#

for i in
$(seq 10 19) ; do

if [ -f file$i ] ; then

           echo “File “file$i” is already exists
!”

else

           cd /tmp ; touch file$i

fi

done

 

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

 

#!/bin/bash

#

for i in
{10..19} ; do

        if [ -f /tmp/file$i ] ; then

                chown user$i:user$i /tmp/file$i

        else

                echo “File “file$i” is not
exists !”

        fi

done

原创文章,作者:天空,如若转载,请注明出处:http://www.178linux.com/71053

(0)
天空天空
上一篇 2017-03-13 15:29
下一篇 2017-03-13 21:01

相关推荐

  • Hadoop实战实例

     Hadoop 是Google MapReduce的一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同java程序员可以不考虑内存泄露一样, MapReduce的run-time系统会解决输入数据的分布细节,跨越机器集群的程序执行调度,处理机器…

    Linux干货 2015-04-13
  • 相识–Varnish

    Varnish与一般服务器软件类似,分为master(management)进程和child(worker,主要做cache的工作)进程。master进程读入命令,进行一些初始化,然后fork并监控child进程。child进程分配若干线程进行工作,主要包括一些管理线程和很多woker线程。 VCL: ”域“专有类型的配置语言 VCL有多个状态引擎,状态之间…

    Linux干货 2017-11-13
  • N25-第十周博客作业

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 内核空间的启动流程 一. POST 加电自检 在加电之后,智能设备所运行的内部存储的一系列检测程序集合。缩写为POST。这些检测程序在软件加载到硬件上运行之前对硬件的基本完整性加以验证。 用于实现POST的代码在主板上ROM(CMOS)芯片上。 二. Boot Sequence(BI…

    Linux干货 2017-03-25
  • 字段分隔符和迭代器

        内部字段分隔符(Internal Field Separator)是shell脚本编程中的一个重要概念。在处理文本数据时,有很大的作用。内部字段分隔符是用于特定用途的定界符,IFS是存储定界符的环境变量,它是当前shell环境中使用的默认定界符字符串。     例一:da…

    Linux干货 2016-08-15
  • 第二周作业

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关实例演示 理论上,linux一切皆文件,对于linux的管理命令均算是文件管理命令。 Linux文件类型常见的有:常规文件、目录文件、块设备文件、字符设备文件、符号链接文件、命名管道、套接字文件等。 -:常规文件 [root@iZ25c28fe7fZ ~]# ls -lh checkmount.s…

    Linux干货 2017-09-25
  • 10个有用的Linux命令面试问题及答案

    1. 如何暂停一个正在运行的进程,把其放在后台(不运行)? 答案:为了停止正在运行的进程,让其在后台运行,我们可以使用组合键 Ctrl+Z。 2. 什么是安装Linux所需的最小分区数量,以及如何查看系统启动信息? 答案:单独一个/root分区足以执行所有的系统任务,但是强烈建议安装Linux时,需要至少三个分区:/root,/boot,/swap。一个ID…

    2017-09-05