天天看点

vim编辑器小练习

1、复制/etc/grub2.cfg至/tmp目录,用查找替换命令去删除/tmp/grub2.cfg文件中的每一行行首的空白字符

2、复制/etc/rc.d/init.d/functions至/tmp/目录,用查找替换命令为/etc/rc.d/init.d/functions的每行开头为空白字符的行的行首添加一个#号

3、复制/etc/init.d/functions文件至/tmp目录,替换/tmp/functions文件中的/etc/sysconfig/init路径为/var/log

4、删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号

1

2

3

4

<code>1、复制</code><code>/etc/grub2</code><code>.cfg至</code><code>/tmp</code><code>目录</code>

<code># install -m 644 /etc/grub2.cfg /tmp  ##目标存在,为目录,复制保持原名</code>

<code># ls -l /tmp/grub2.cfg </code>

<code>-rw-r--r-- 1 root root 5853 Jun 11 18:37 </code><code>/tmp/grub2</code><code>.cfg</code>

<code>2、</code><code>/tmp/grub2</code><code>.cfg为文件</code>

<code># file /tmp/grub2.cfg </code>

<code>/tmp/grub2</code><code>.cfg: ASCII text</code>

5

6

7

8

9

10

11

<code>3、用查找替换命令去删除</code><code>/tmp/grub2</code><code>.cfg文件中的每一行行首的空白字符</code>

<code># vim +/^[[:space:]]\\+ /tmp/grub2.cfg  进入文件,光标处于匹配到此模式的第一行</code>

<code>:%s@^[[:space:]]\+@@</code>

<code># sed -i 's@[[:space:]]\+@@' /tmp/grub2.cfg</code>

<code># sed -i -r 's@[[:space:]]+@@' /tmp/grub2.cfg  ##调用扩展正则表达式引擎,只是元字符不同</code>

<code>    </code><code>1、</code><code>sed</code><code>默认对全文扫描</code>

<code>    </code><code>2、定界时,也会全文扫描,只是处理定界的行</code>

<code>    </code> 

<code>    </code><code>g: 一行中有多个匹配到的内容,全部替换, 此处模式,只能匹配一个,有g无g没有差别</code>

<code>1、复制</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/functions</code><code>至</code><code>/tmp/</code><code>目录</code>

<code># cp /etc/rc.d/init.d/functions /tmp</code>

<code># ls -l /tmp/functions </code>

<code>-rw-r--r-- 1 root root 15131 Jun 11 18:49 </code><code>/tmp/functions</code>

<code>2、查找替换命令为</code><code>/etc/rc</code><code>.d</code><code>/init</code><code>.d</code><code>/functions</code><code>的每行开头为空白字符的行的行首添加一个</code><code>#号</code>

<code>:%s@^[[:space:]]\+@</code><code>#&amp;@ </code>

<code># sed 's@^[[:space:]]\+@#&amp;@' /tmp/functions</code>

<code>    </code><code>同vim用法</code>

<code>1、复制</code><code>/etc/init</code><code>.d</code><code>/functions</code><code>文件至</code><code>/tmp</code><code>目录</code>

<code># install -m 600 /etc/rc.d/init.d/functions /tmp/file.txt</code>

<code>2、替换</code><code>/tmp/functions</code><code>文件中的</code><code>/etc/sysconfig/init</code><code>路径为</code><code>/var/log</code>

<code>:%s@</code><code>/etc/sysconfig/init</code><code>@</code><code>/var/log</code><code>@g</code>

<code>:%s@^</code><code>#\([[:space:]]\+\)@\1@</code>

<code></code>

本文转自 lccnx 51CTO博客,原文链接:http://blog.51cto.com/sonlich/1953292,如需转载请自行联系原作者

上一篇: 日志管理
下一篇: apt-get和pkgsrc