Linux VI/VIM练习

  • 练习一
  • 1.将/etc/passwd 复制到/root/目录下,并重命名为test.txt
    • cp -r /etc/passwd /root/test.txt
  • 2.用vim打开test.txt并显示行号
    • vim test.txt
    • 显示行号 :set nu
  • 3.分别向下、向右、向左、向右移动5个字符,分别向下、向上翻两页
  • 4.把光标移动到第10行,让光标移动到行末,再移动到行首,移动到test.txt文件的最后一行,移动到文件的首行
    • 光标移动到第10行 10gg
    • 光标移动到行末 end或$
    • 再移动到行首 home 或^
    • 移动到test.txt文件的最后一行 G
    • 移动到文件的首行 gg
  • 5.搜索文件中出现的 root 并数一下一共出现多少个,不区分大小写搜索
  • /root root出现了4次
  • 6.把从第一行到第三行出现的root 替换成linux,然后还原上一步操作
    • :1,3s/root/linux/g
    • 还原上一步操作 u
  • 8.把整个文件中所有的root替换成linux
    • :%s/root/linux/g
  • 9.把光标移动到20行,删除本行,还原上一步操作
    • 把光标移动到20行 20gg 删除本行 dd 还原上一步操作 u
    • 20行已删除

  • 10.删除第19行,还原上一步操作
    • 先把光标移动到第19行 19gg 再删除光标所在的行 dd 还原上一步操作 u
    • 已删除第19行

  • 11.删除从5行到10行的所有内容,还原上一步操作
    • 光标移动到第5行(5gg) 从第五行到10行总共有6行内容 6dd
    • 已删除从5行到10行的所有内容

  • 12.复制2行并粘贴到11行下面,还原上一步操作(按两次u)
    • 光标先移动到11行 11gg
    • 输入2yy 复制2行内容
    • 最后输入P 就可以把复制的两行内容粘贴到11行下面
  • 13.复制从11行到15行的内容并粘贴到8行上面,还原上一步操作(按两次u)
    • 在末行模式下 输入 :11,15y (复制11行到15行的内容)
    • 光标移动到第八行 8gg 最后输入P
  • 14.把13行到18行的内容移动文件的尾部,还原上一步操作(按两次u)
    • 先删除13行到18行的内容 先把光标移动到第13行 (13gg) 13行到18行共有6行命令 (6dd)
    • 再把光标移动到文件最后一行 (G) 最后一行的行尾($) 最后输入(P ) 粘贴13行到18行的内容
  • 15.光标移动到首行,把/sbin/nologin改成/bin/bash
    • 光标移动到首行 ^
    • 把/sbin/nologin改成/bin/bash :%s$/sbin/nologin$/bin/bash
  • 16.在第一行下面插入新的一行,并输入"# Hello!"
    • 在第一行下面 也就是第二行
    • 光标移动到第二行 1gg 输入i 进入输入模式 回车
    • 输入# hello
  • 17.保存文档并退出
    • 保存文档并退出 :wq!
  • 练习二
  • #示例文件
  • # cat >> proxy.conf <<EOF
  • server {
  • Listen 8080;
  • Server_Name
  • www.example.org;
  • location / {
  • proxy_pass http://127.0.0.1:8080;
  • proxy_set_header Host $http_host;
  • proxy_set_header X-Forward-for;
  • proxy_intercept_errors on;
  • proxy_next_upstream error timeout;
  • proxy_next_upstream_timeout 3s;
  • proxy_next_upstream_tries 2;
  • error_page 500 502 403 404 = /proxy_error.html;
  • }
  • location = /proxy_error.html {
  • root /code/proxy;
  • }
  • }
  • EOF
  • #完成以下操作
  • 1.使用vim打开proxy.conf文件
    • vim proxy.conf
  • 2.修改Listen为listen小写,并将8080修改为80
    • 进入输入模式 (i) 把光标移动到需要需要的位置,直接进行修改
  • 3.修改Server_Name为server_name小写。
    • (一)进入输入模式 (i) 把光标移动到需要需要的位置,直接进行修改
    • (二)进入末行模式(:)输入:%s/Server_Name/server_name/g
  • 4.修改www.example.orgedu.softeem.com
    • (一)进入输入模式 (i) 把光标移动到需要需要的位置,直接进行修改
  • 5.在server_name行下插入一行 root /code;
    • 光标移动到server_name后点击回车,会新建一行
    • 直接输入root /code;
  • 5.复制5-14行的内容,然后将其粘贴到14行下面
    • 5-14行 共有10行的内容
    • 在命令模式下 光标移动到第5行(5gg)输入(10yy )
    • 光标移动到14行(14gg)行尾($) 输入(P)就会把内容粘贴到14行的下面
  • 6.删除与proxy_set_header相关的两行全部删除
    • 先查找与proxy_set_header相关的两行
    • /proxy_set_header
    • 使用块视图将proxy_set_header相关的两行删除
      • 将光标移动到proxy_set_header相关的第一行
      • 使用Ctrl+V 选中proxy_set_header相关的两行 输入dd 删除proxy_set_header相关的两行
  • 7.如上操作完成后,在13-20行前面加上#号
    • 将光标移动到13行 (13gg)
    • 使用Ctrl+V 使用行视图
    • 选中13-20行 (20gg)
    • shift+i (进入输入模式)
    • 输入#
    • 两次esc
  • 8.删除21-23的行,然后保存当前文件
    • 将光标移动到21行
    • 使用Ctrl+V 使用行视图
    • 选中21-23行 (23gg)
    • 输入dd 删除
    • 保存 :q!
  • 13
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值