文章目录

  • vi编辑器
    • 一般模式
    • 编辑模式
    • 末行指令模式
  • shell编程
    • Shell 语法

vi编辑器

  vi编辑器有3种模式,分别是一般模式编辑模式末行指令模式。使用vi打开一个文件时,进入的就是一般模式,一般模式可以与编辑模式、末行指令模式相互转换,但是编辑模式和末行指令模式之间不能直接转换,必须通过一般模式进行转换。

一般模式

  在这种模式中最基础的功能就是“移动光标”—使用上下左右键来移动光标块。还可使用按键组合的方式来执行复制、粘贴、删除的功能。

  • 在一般模式中,使用vi复制行的操作如下:
1. 将光标移动到第一行
2. 连续按y键两次(yy,即复制该行)
3. 按p键,粘贴
  • 在一般模式中,使用vi删除行的操作如下:
1. 将光标移动到第二行
2. 连续按d键两次(dd,即删除该行)
  • 在一般模式中,使用vi删除词的操作如下:
1. 将光标移动待删除词的第一个字母p上
2. 使用组合键dw(即删除一个词语)。或者使用x,每次x删除一个字母。

  按u键。撤销最近一次操作。

  • 在一般模式中,使用/搜索关键字的操作如下:
1. 输入/符号
2. 输入关键字

  按n键继续往下找,每按一次光标将跳至下一个关键字处,如果要想往上寻找,则按大写字母N

  • 在一般模式中,使用/替换关键字的操作如下:

  • vim

  vimvi相比更强大一点,能够支持多行编辑和多文件编辑。

  进入一般模式后,使用Ctrl+v组合键,这时最下行会出现“-- VISUAL BLOCK–”字样,这说明当前进入了Visual Block模式(如果只按大写的字母V则代表进入多行选中模式,此时最下行会出现“-- VISUAL LINE–”字样)。使用上下左右键可以选中多行文字。选中后可以一次性复制(y键)、删除(d键)选中的文字或者将其粘贴到其他地方(p键)。

编辑模式

  在一般模式中,按i键可以进入编辑模式。在编辑模式中,依然可以使用上下左右键来移动光标,同时还可以输入文字到文件中。从编辑模式回到一般模式需要按Esc键。

末行指令模式

  在一般模式中,按冒号键(:)或斜杠键(/)或问号键(?)就会在当前视图的最后一行出现相应的符号,这就代表进入了相应的末行指令模式。

  在末行指令模式中,退出操作命令如下:

1. 按:键
2. 输入wq(w 代表写入,q代表退出)
3. 回车

  其中第二步,wq组合键的功能可以使用x代替(x等同于wq)。

shell编程

  Shell是指一种命令行解释器,是为用户和操作系统之间通信提供的一种接口,它接受来自用户输入的命令,并将其转换为一系列的系统调用送到内核执行,并将结果输出给用户。

  Shell分为两大类,一类是图形界面Shell(Graphical User Interface),另一类是命令行式Shell(Command LineInterface),即CLIShell不只是一种解释器(在用户和系统间起着桥梁的作用),还是一种编程工具,称为脚本语言。与编译型语言(比如C/C++/Java等)不同,脚本语言又被称作解释型语言,这种语言经过编写后不需要做任何编译就可以运行。解释型语言是运行时翻译,执行一条语句就立即翻译一条,而且每次执行程序都需要进行解释,相对来说效率较低。但是也不能简单地认为编译型语言就一定比解释型效率高,随着解释器的发展,部分解释器能在运行程序时动态优化代码,因此这种效率差距也在一定程度上不断减小。

  Bash Shell有两种工作模式,分别是互动模式和脚本模式。所谓互动模式就是由系统管理人员直接通过键盘输入命令,并等待其执行完毕后再执行下一条命令;而另一种模式是设计出一个脚本文件,将所有需要执行的命令写在该文件中,由Bash Shell读取并执行。

Shell 语法

  编辑一个如下脚本:

#!/bin/bash
#This Line is a comment
echo "Hello World!"

  一个Shell脚本永远是以“#!”开头的,这是一个脚本开始的标记,它是在告诉系统执行这个文件需要使用某个解释器,后面的/bin/bash就是指明了解释器的具体位置。第二行同样是以“#”开头的,但是这里是一个注解。脚本中所有以“#”开头的都是注解(当然以“#!”开头的除外)。第三行是一句非常简单的命令:输出“Hello World”。其实这条命令与在终端中执行的效果是一样的(最简单的脚本就是命令的罗列)。

### 运行脚本# 第一种:在该脚本所在的目录中直接bash这个脚本。该脚本中的第一行“#!/bin/bash”就可以不需要了,
# 因为直接bash一个文件就是指定了使用BashShell来解释脚本内容。
bash xxx.sh# 第二种:给该脚本加上可执行权限,然后使用“./”来运行。
chmod +x xxx.sh
./xxx.sh

  如果希望该脚本能成为默认的系统命令,简单地将该脚本复制到任一系统$PATH变量所包含的目录中,同时赋予可执行权限,下次运行的时候只需要直接输入该命令即可。也支持用Tab键补全命令。下例就是将其复制到了/bin目录,并执行该脚本的情况。

chmod +x xx.sh
mv xx.sh /bin/
xx.sh # 运行命令

Linux系统(三)vi、vim编辑器和shell编程相关推荐

  1. linux系统中vi/vim文本编辑器的使用简介

    linux系统中vi/vim文本编辑器的使用简介 1. vi/vim简介 ​ vi/vim 是linux系统中最基本的编辑器,类似于windows系统中的记事本,几乎所有的linux开发版本都内置了v ...

  2. Linux入门教程——VI/VIM 编辑器

    前言 本文小新为大家带来 Linux入门教程--VI/VIM 编辑器 相关知识,具体内容包括VI/VIM是什么,VIM的三种工作模式介绍,包括:一般模式,编辑模式,指令模式,以及模式间转换等进行详尽介 ...

  3. Linux系统基本命令之vim编辑器的使用

    Linux系统下有很多编辑器,经常听到的就有:Emacs ,pico ,nano ,joe , vim等 一.     学习vim编辑器的原因 l  所有的Linux系统都会内置vi编辑器,而不一定会 ...

  4. linux系统进入退出vim编辑器及termux修改问候语

    vim编辑器是Linux系统自带的文本编辑器 进入VIM编辑器 vim /<路径>/文件名.后缀名 如果这个文件,以前是没有的,则为新建,会有提示,否者则没有提示. 进入编辑器后,按&qu ...

  5. linux里的vi/vim编辑器怎么用

    关于VIM Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.Vim是从 vi 发展出来的一个文本编辑器.代码补全.编译及错误跳转等方便编程的功能特别 ...

  6. linux ultraedit安装教程,Linux系统安装最新版本Vim编辑器的简单方法整理

    Vi编辑器已经存在了很长时间,它是在1976年左右开发使用的,Vi编辑器为用户提供了传统而强大的功能,例如有效的编辑界面,终端控制等. 但是,Vi编辑器缺少某些吸引人的功能,例如多个屏幕,语法高亮显示 ...

  7. Linux系统Vi/Vim编辑器的简单介绍、安装/卸载、常用命令

    Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

  8. linux vim修改字符串,Linux系统vi(vim)编辑器命令说明

    Linux系统vi(vim)编辑器命令说明 刘大喵 • 2019 年 02 月 06 日 vi(vim)是上Linux非常常用的代码编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim ...

  9. delphi中richedit中光标如何定位到最后_嵌入式开发之Linux系统中Vi编辑器的使用

    请大家关注点赞,已经完成物联网相关开发,会从硬件层,硬件中间层,传输层,软件中间件(物联网云平台),APP开发相关博文.首先从嵌入式开发博文开始!上一节关于<>.本节关于Linux系统中V ...

  10. 6.Linux中vi/vim编辑器详解

    文章目录 前言 一.vim/vi 介绍 二.vi/vim学习图(初级) 三.文本编辑(状态)概览 四.使用vi打开文本的方式 五.命令模式 1.进入插入模式(进行文本编辑) 2.从插入模式切换为命令行 ...

最新文章

  1. mysql 手动写时间_关于数据库中如何存储时间的一点思考
  2. 2021年春季学期-信号与系统-第七次作业参考答案-第一小题
  3. A-Light-and-Fast-Face-Detector-for-Edge-Devices
  4. HYSBZ - 3676 回文串(回文自动机)
  5. BaiduAI-GNN:2.2图学习初印象
  6. python 打印的异常回溯和代码不对应
  7. javascript中的正则表达式学习
  8. MySQL配置优化选项
  9. calloc与malloc的区别
  10. 网页截图怎么截一整张_如何对整个网页页面进行截图
  11. UVA 12304 计算几何+圆模板
  12. 史上首例!阿里程序员写的代码,被国家博物馆收藏了!
  13. 难以置信,网易首席架构师竟用了500页笔记,把网络协议给趣谈了
  14. echarts 环形图 不同区域背景色自定义
  15. Response学习
  16. Windows : bat脚本
  17. 一个前端开发工程师的天猫精灵评测报告
  18. 线性代数几种特殊类型行列式_及其计算
  19. KPI考核系统实战之一:环境搭建
  20. 集成一个以官网(微信,QQ,微博)为标准的登录分享功能

热门文章

  1. ESXi配置vCenter服务器
  2. OSPF邻接关系状态机
  3. NetDevOps常用数据库python实战-MongoDB
  4. KVM详解(六)——KVM虚拟机快照
  5. IS-IS详解(十九)——IS-IS 与IPv6
  6. 后羿射日般的精准 - 阿里云ECS调度是如何炼成的
  7. Spring Boot 使用Dubbo 创建Hello Wrold
  8. python中定制类
  9. 推荐!手把手教你使用Git(转)
  10. vs2010 打开项目卡死问题解决办法