news 2026/7/6 14:10:37

使用vim编辑器和shell命令补充

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
使用vim编辑器和shell命令补充

使用vim编辑器和shell命令补充

第一部分:知识点概念理解与实操

  1. Vim 编辑器
    (1)概念理解:Vim 是 Linux 下功能强大的文本编辑器,是 Vi 的升级版。它采用全屏模式,具有多种操作模式(普通模式、插入模式、命令行模式)。
    (2)实操要点:
    启动:vim filename(若文件不存在则新建)。
    模式切换:
    普通模式 → 插入模式:按 i 键。
    插入模式 → 普通模式:按 ESC 键。
    保存退出:在普通模式下按“ : ”进入命令行模式,输入 wq 保存退出。




    在命令行模式下有几个命令可以将缓冲区的数据保存到文件中并退出vim。
    q:如果未修改缓冲区数据,退出。如有修改,则出现提示
    q!:取消所有对缓冲区数据的修改并强制退出。
    w filename:将文件保存到另一个文件中。
    wq:将缓冲区数据保存到文件中并退出。
    wq! :将缓冲区数据保存到文件中并强制退出。

  2. Nano 编辑器
    (1)概念理解:Nano 是一个简单易用的控制台文本编辑器,适合初学者。底部会显示常用快捷键(如 ^O 保存,^X 退出)。
    (2)实操要点:直接输入 nano filename 即可进入编辑,操作逻辑类似 Windows 记事本。

  3. Echo 命令
    (1)概念理解:用于在终端显示文本或变量的值。
    (2)实操要点:
    输出字符串:echo “Hello World”
    输出变量(注意引号区别):
    name=“Linux”
    echo "name"(输出变量值)echo′name" (输出变量值) echo 'name"(输出变量值)echoname’ (输出字符串 $ name,单引号不解析变量)

  4. 管道符 (|)
    (1)概念理解:将前一个命令的输出作为后一个命令的输入。
    (2)实操要点:echo “Hello World” | grep “World”

  5. 重定向命令 (< 和 >)
    (1)概念理解:改变命令的输入或输出方向。
    (2)实操要点:
    输出重定向 (>):echo “Hello,world!” > file.txt(覆盖写入,若文件不存在则创建)。
    追加重定向 (>>):echo “Hello,world!” >> file.txt(在文件末尾追加内容)。
    输入重定向 (<):grep “Hello,world!” < file.txt(将文件内容作为 grep 的输入)。

  6. 文件合并 (paste 和 join)
    概念理解:
    paste:可将多个文件以列对列的方式加以合并(单纯的合并)。
    join:可将多个文件中有相同特征的列进行合并。

第二部分:知识框架体系

  1. 文本编辑器类
  2. Shell 基础命令类

    第三部分:练习题详细步骤

首先,我们需要创建一个包含指定内容的文本文件。
(1)输入命令:vim practice.txt
(2)按 i 进入插入模式。
(3)输入以下内容:
dsflcku old hfds
dsfh
old old old new
dsad
dsadsa old old old
(4)按 ESC 退出插入模式,输入 :wq 保存并退出。

① 学习如何进入和退出编辑模式
操作:
(1)输入 vim practice.txt 打开文件。
(2)进入编辑:按下键盘上的 i 键,左下角会出现 – INSERT --。
(3)退出编辑:按下键盘上的 ESC 键,左下角 – INSERT – 消失。

② 如何保存文本
操作:
(1)确保处于普通模式(按 ESC)。
(2)输入 :w 并回车(仅保存不退出)。
(3)输入 :wq 并回车(保存并退出)。

③ 查找文本中的所有 old 字符
操作:
(1)输入 vim practice.txt 打开文件。
(2)在普通模式下,输入 /old 并回车。
(3)光标会跳转到第一个 “old”。
(4)按 n 键查找下一个,直到遍历完所有 “old”。

④ 替换文件中 old 为 test
这里包含两个操作:全文替换和特定行替换。
(1)操作 A:全文替换 (将所有 old 变为 test)
命令:在普通模式下输入 :%s/old/test/g 并回车。
解释:%代表全文,s代表替换,g代表全局(一行内所有)。

(2)操作 B:特定行替换 (例如只在第 2 行到第 4 行替换)
准备:先用 u 撤销刚才的替换,或者重新打开文件。
命令:在普通模式下输入 :2,4s/old/test/g 并回车。
解释:2,4 指定了行号范围。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/6 14:06:42

《抽象数据类型:把数据和对数据的操作绑在一起》

前言C 语言是一门面向过程的语言&#xff0c;没有 class 类&#xff0c;但是我们可以利用头文件.h和源文件.c分离的写法&#xff0c;模拟面向对象里的封装思想&#xff0c;也就是抽象数据类型&#xff08;ADT&#xff09;。 所有数据结构统一使用这套规范编写&#xff0c;代码整…

作者头像 李华
网站建设 2026/7/6 14:05:59

BsMax插件:3ds Max用户如何在Blender中无缝延续专业工作流?

BsMax插件&#xff1a;3ds Max用户如何在Blender中无缝延续专业工作流&#xff1f; 【免费下载链接】BsMax BsMax Blender Addon (UI simulator/ Modeling/ Rigg & Animation/ Render Tools and ... 项目地址: https://gitcode.com/gh_mirrors/bs/BsMax 从3ds Max转…

作者头像 李华
网站建设 2026/7/6 13:56:46

RL 的 token 选择之争:高熵词到底重不重要?

一句话总结 有的研究认为 RL 时要重点训高熵 token&#xff08;激发探索&#xff09;&#xff0c;有的则认为要避开它们&#xff08;干扰优化&#xff09;&#xff0c;关键是双方的实验都能涨点。作者提出 “相对惊喜度” 指标来同时刻画 token 的不确定性与梯度影响&#xff0…

作者头像 李华
网站建设 2026/7/6 13:56:49

批量水印自动化:让照片参数自动变成艺术标签

批量水印自动化&#xff1a;让照片参数自动变成艺术标签 【免费下载链接】semi-utils 一个批量添加相机机型和拍摄参数的工具&#xff0c;后续「可能」添加其他功能。 项目地址: https://gitcode.com/gh_mirrors/se/semi-utils 还在为每张照片手动添加拍摄参数而烦恼吗&…

作者头像 李华
网站建设 2026/7/6 13:54:40

阿里:语言世界模型赋能通用智能体

&#x1f4d6;标题&#xff1a;Qwen-AgentWorld: Language World Models for General Agents &#x1f310;来源&#xff1a;arXiv, 2606.24597v1 &#x1f6ce;️文章简介 &#x1f538;研究问题&#xff1a;如何构建基于语言模型的通用环境模拟器&#xff0c;并探索其提升智能…

作者头像 李华