美文网首页
vim文本编辑器及shell脚本文件

vim文本编辑器及shell脚本文件

作者: 石志不渝 | 来源:发表于2023-09-04 09:34 被阅读0次

一 vim文本编辑器

在正式开始介绍vim之前,先思考一个问题:学编程语言,前前后后装了这么多东西,这些东西都是做什么的?

1.1 python“随从”们

语言怎么运行的

无论脚本语言还是编译型语言,编码的时候,我们都需要使用人类语言进行编写,但运行的时候都需要转化为二进制。脚本语言是在每次运行时,由解释器将人类语言(代码)转化为二进制的。python就属于脚本类语言。
在学习python时,我们都安装了哪些东西?学python,至少会安装两个东西:

  1. python官网下载一个python安上

    python
  2. 找个pycharm或者vscode其他的安装上

    pycharm

作用:

  1. 官网下载的python
    你安装python时,并不是安装了一门语言叫python。编程语言本身是不需要安装的。你安装python时,其实是安装的我们上文所说的\color{red}{解释器(翻译官)}。而python官方主要的工作,就是开发这个解释器、以及制定语言的语法。
  2. pycharmvscode
    python并不是必须使用pycharmvscode才能编写,也不是必须基于某个特别开发的软件才能编写;基于任何文本编辑器都可以写python。区别在哪?区别在文本编辑器提供的插件功能,是不是具有python语法的支持,如果有支持,那么可以自动补全,可以帮我们检查我们是不是写错了;如果没有语法支持,也可以写,但就需要自己从头写到尾,并且自己检查自己是不是写错了,否则就只能等着执行的时候看看是不是错了。
    执行的时候错了,就是第一步,python解释器给报出来的错了;书写的时候,是文本编辑器给检查和提示的错误

1.2 奉若神明的Vim

Vim的作者刚刚去世(2023-08-03)。去世当天社区很多人发表纪念。vim编辑器在linux中是经常使用的编辑器,也是类UNIX系统中,普遍随系统自带的编辑器。初学的时候有人会对它各种鄙视、甚至恨之入骨;但遇到一些极端情况后,就会庆幸系统里还有Vim

Bram Moolenaar(布萊姆·米勒)

Vim的缺点是,真正想用熟练比较难,因为有好多需要记忆的东西。快捷操作比较多,不太会的人一通乱按,很可能不知道进了哪个模式,把文件搞乱。显示的也不像现代编辑器那样美观。
优点:

  1. 有很多快捷键,几乎不需要鼠标的参与。当我们为专业人士设计软件时,如果讲究操作速度,都会提出无鼠标化操作。比如某些财务软件。当追求快速操作时,拿鼠标一下一下点,很让人崩溃。
  2. 无需GUIGUI可以理解为界面。Vim是使用全命令行操作的,这就代表了它可以运行在全命令行(server)linux上。这在某些情况下是非常重要的,比如小型嵌入式linux系统(性能不足以长时间支撑桌面环境)、需要远程连接和操作服务器时、桌面环境无法打开的情况。

1.3 ubuntu使用Vim

1.3.1 安装

系统安装完成后,自带的编辑器是vi,viVim的精简版本(毕竟少了个m);我们需要安装一下vim

未安装vim

当在windows下,我们说个安装软件,有些时候会头疼,但这个过程在linux下,很多时候要简单很多。运行命令如下,注意:确保系统可以连接网络。

sudo apt update && sudo apt install vim -y
安装成功

1.3.2 使用

启动命令:

# vim <文件名>
vim ./test.txt

要编辑的文件可以不存在,不存在的话,当你退出编辑并保存时,会自动创建一个文件。当刚刚打开一个文件\color{red}{不按下任何按键}时。显示信息如下:

  1. 底部从左到右,依次是文件名文件包含的行数文件的大小
  2. 上部空白区域,为文件内容的显示区域,如果没内容是空白的。


    打开一个文件

三种模式:
Vim提供了三种模式,每种有它自己的功能:命令模式、输入模式、末行模式。这三种模式中,我们对文本内容的主要编辑操作,是在输入模式下完成的,其他两种模式,主要是为了提供一些快捷操作、必要操作设置的。快捷操作主要集中在命令模式下,也是Vim难学难记的核心。但我们只需要几个简单的命令即可。
打开文件,什么也不按下的情况下,是在命令模式。
三种模式,通过不同的操作进行切换。命令模式相当于父节点,输入模式末行模式相当于子节点,子节点都是和父节点进行来回切换的。所以

  1. 能由命令模式进入输入模式(按i,oa),由输入模式返回命令模式(按Esc)
  2. 能由命令模式进入末行模式(按:),由末行模式返回命令模式(按Esc)
  3. 输入模式末行模式无法直接切换

三种模式的截图如下:
命令模式下,无法对文本进行编辑


命令模式

按下i,oa进入编辑模式,此时可以对文件进行编辑。成功进入编辑模式的特征,是底部会有一个--INSERT--的提示

编辑模式

在编辑模式下,按Esc,返回命令模式,再次变成无法编辑文本的模式,底部--INSERT--提示消失

回到命令模式

在命令模式下,按下:,进入末行模式。在末行模式下:

  1. 输入q!会放弃所有更改直接退出
  2. 输入wq会保存并退出
    末行模式

进入编辑模式各有不同

按键 进入编辑模式的状态 示意图
i(不区分大小写) 在光标当前位置进入编辑模式,新写入时从光标当前位置前写入 i进入编辑模式光标位置
a(不区分大小写) 在当前光标的下一个字符开始编辑 a进入编辑模式光标位置
o(不区分大小写) 在当前光标的下一行插入一个新行 o进入编辑模式光标位置

一点快捷操作

  1. 显示行号
    :,需要进入末行模式。输入set number。 可以看到出现了行号。当我们进行代码修改的时候,有行号会方便很多。

    显示行号
  2. 不显示行号也可以,显示后跳转方便一些。命令模式下,直接输入nG,可以跳转到第n行。G得大写。

    6G
    

二 shell脚本文件

前面我们已经讲到过shell脚本,但我们前面的文章里,shell脚本都是在命令行里一条一条的敲进去的。那么,当我们实际需要运行多条指令、要每个周期执行重复的指令时,应该如何解决?

我们可以把脚本写入文件中,需要运行时,直接调用脚本文件即可。Linux中,脚本文件后缀为.sh,windows中为.bat。因为是每次需要处理一批指令,而不是一条,所以也叫做批处理文件

vim ./test.sh
#!/bin/bash
ls
echo $PATH
sudo chmod +x ./test.sh
./test.sh

习题

请使用shell脚本文件,一次性分行输出你的:

  1. 用户名
  2. 主目录路径
  3. 默认的shell版本
习题样式

相关文章

  • Linux就该这么学 | 第04~06章

    第4章:Vim编辑器与Shell命令脚本 本章学习内容有 Vim文本编辑器、编写Shell脚本、流程控制语句、第一...

  • Linux之shell脚本编程

    Linux之shell脚本编程 主要内容: • Vim 编辑器• Shell 脚本• 任务提交 Vim 编辑器 V...

  • Shell(undone)

    第一个shell脚本 打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 test.sh,扩展...

  • Shell笔记

    一、shell编程基础 打开文本编辑器(如vim),新建一个文件 test.sh #!/bin/bash #!告诉...

  • holleworld

    创建一个目录学习shell脚本,叫shell_script吧 开始写shell脚本 进入vim编辑器,按 i输入一...

  • day10预习笔记

    第7章 Linux文件过滤及内容编辑处理 vi/vim:纯文本编辑器 命令详解 格式:vim[选项] [文件] v...

  • 第五章-vim编辑器

    文本编辑器vim 1.vim常用操作 vim 是功能强大的全屏幕文本编辑器 作用:建立、编辑、显示文本文件 特点:...

  • shell脚本的创建和执行

    打开文本编辑器(可以使用vi/vim命令来创建文件),新建一个文件test.sh,扩展名为sh(sh代表shell...

  • 编译简单的脚本

    Shell脚本的编写要使用到Vim文本编辑器,按照命令的执行顺序依次编写,每行写一条Linux命令。并且一个完整的...

  • linux 大文件排序、去重

    总体思路,分而治之 编写shell脚本 vim sort_bigfile.sh 执行shell, 目标大文件big...

网友评论

      本文标题:vim文本编辑器及shell脚本文件

      本文链接:https://www.haomeiwen.com/subject/jrkqvdtx.html