第六周作业

vim编辑器的使用

vim在工作过程中有三种模式:编辑模式、输入模式、末行模式

编辑模式:也叫命令模式,键盘操作常被理解为编辑命令。

输入模式:在文本文件中输入内容。

末行模式:vim内置的命令行接口,执行vim的内置命令。

vim的使用

打开文件:#vim [OPTIONS]…[FILE]…

+#:打开文件后,直接让光标处于第#行

+/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首。

 

模式转换

  1. ESC键:可以从输入模式转换到编辑模式

  2. 编辑模式–>输入模式可以使用以下命令:

    i:在光标所在处的前方转换为输入模式

    a:在光标所在处的后方转换为输入模式

    o:在光标所在行的下方新建一个空行并转换为输入模式

    I:在光标所在行的行首输入

    A:在光标所在行的行尾输入

    O:在光标所在行的上方新建一个空白行

  3. 编辑模式–>到末行模式:直接输入冒号(:)即可在窗口的左下方显示冒号;

  4. 末行模式–>到编辑模式:敲击ESC按键

  5. 输入–>编辑–>末行:输入模式不能直接栓还到末行模式

 

退出文件:在末行模式下执行

         :q 退出

         :q!不保存直接退出

         :wq 保存并退出

         :x 保存退出

         :wq! 强制保存退出

         :w /PATH/TO/SOOOMEWHERE 保存至某路径

    注意:编辑模式下直接使用快捷键ZZ也可实现保存退出

 

光标的移动

        h:左    l:右    j:下    k:上

        同时还支持数字跳转:#{h|l|j|k} 表示跳#个字符

 

单词间移动:

        w:下一个单词词首

         e:下一个单词词尾

         b:当前单词或前一个单词词首

        #{w|e|b}跳#个单词

 

行内移动:

        ^:行首第一个非空白字符

        0:绝对行首

        $:绝对行尾

 

句子间移动:

        (:移动到上一句句首

        ):移动到下一句句尾

 

段落间移动:

        {:移动到上一段段首

        }:移动到段尾或下一段段首

 

行间移动:

        #G:跳转到#行

          G:最后一行

         1G,gg:第一行

        

 

练习:

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



%s@^\([[:space:]]\{1,\}.*\)@#\1@g

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



%s@^[[:space:]]\{1,\}@@

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



%s@^#[[:space:]]\{1,}@@g

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

1,3s@^@#@g

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

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

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

crontab -e
0 */4 * * * /bin/tar -czf /backup/etc-`date +%Y%m%d%H%M` /etc

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

crontab -e
0 0 2,4,6 * * /bin/tar -czf /backup/messages_logs/message-`date +%Y%m%d` /var/log/messages

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

crontab -e
0 */2 * * * /bin/grep "^S\+" /proc/meminfo > /stats/memory.txt

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

crontab-e
0 (9-17)/2 * * 1-5 /bin/echo "howdy"

脚本编程练习

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

!#/bin/bash
mkdir /tmp/testdir-`date +%Y%m%d%H%M%S`

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

!#/bin/bash
for num in {1..100}; do
    touch file"$num"
done

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

#!/bin/bash 
sed -n ‘n;p’ /etc/passwd | cut -d: -f 1 

 

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

(0)
M36-MasuriM36-Masuri
上一篇 2017-07-03 23:48
下一篇 2017-07-04 12:58

相关推荐

  • 设计模式(九)外观模式Facade(结构型)

    1. 概述      外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。例子1:一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。该电源总开关可以同时控制上述所有电器设备,电源总开关即为该系统的外观模式设计。 2.…

    Linux干货 2015-07-06
  • corosync+pacemaker对mariadb实现高可用

    corosync+pacemaker对mariadb实现高可用 利用nfs共享存储,导出一个目录作为mariadb的数据目录,然后利用corosync+pacemaker对mariadb进行高可用 1、实验环境 2、实验前的分析 利用nfs导出目录作为mariadb的共享目录,要确保各个mariadb节点对该目录具有写权限,也就是要确保nfs服务器上有一个U…

    Linux干货 2016-11-24
  • 第二周作业

    第一、文件管理类命令     cp、mv、rm                  cp命令:copy 源文件;目标文件;     &nbsp…

    Linux干货 2016-12-12
  • vncserver安装配置小结

      安装VNC Server 端:        1. yum install  tigervnc-server         //RHEL6: vnc server的包名          yum &nbs…

    Linux干货 2016-03-09
  • Linux系统管理基础

        一、Linux系统初识             1、用户界面           &nbsp…

    Linux干货 2015-04-14
  • sed命令解析

    处理文件的工具sed Stream EDitor, 行编辑器 一次只读一行,只处理一行,不对源文件做处理,至输出到屏幕上模式空间 sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space), 接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往…

    Linux干货 2016-08-11