目录
1. 目录结构介绍
Linux的世界里一切皆文件。
Linux的目录结构是一个层次化的文件系统结构,它以根目录(/)为起点,包含了许多不同的目录,每个目录都有其特定的用途和功能。
下面是Linux常见的目录及其功能的介绍:
1、/bin:包含可执行的二进制文件,如常用的命令(例如ls、cp、rm等)。
2、/boot:包含启动Linux系统所需的文件,如内核(kernel)和引导加载程序(bootloader)。
3、/dev:包含设备文件,用于与硬件设备进行交互,如磁盘、键盘、鼠标等。
4、/etc:包含系统的配置文件,如网络配置、用户账户配置、服务配置等。
5、/home:包含用户的主目录,每个用户在此目录下有一个独立的子目录,用于存储其个人文件和配置。
6、/lib和/lib64:包含共享库文件,这些库文件被可执行文件使用,提供了各种功能和服务。
7、/media:用于挂载可移动媒体设备(如光盘、USB驱动器)的挂载点。
8、/mnt:用于临时挂载文件系统的挂载点。
9、/opt:用于安装第三方软件的目录,通常将软件包安装到/opt/<package>目录下。
10、/proc:虚拟文件系统,包含有关系统进程和内核状态的信息。
11、/root:超级用户(root)的主目录。
12、/sbin:包含系统管理员(root)使用的系统命令,如系统管理和维护工具。
13、/tmp:用于存储临时文件的目录,重启后会清空其中的内容。
14、/usr:包含用户安装的应用程序和文件,类似于Program Files目录。
15、/var:包含经常变化的文件,如日志文件、缓存文件、邮件等。
和Windows系统C盘、D盘、E盘等不同,Linux系统的根文件目录是不可以被修改的。
2. vi介绍
Vi(Visual Editor)是一款在Unix和Linux系统中广泛使用的文本编辑器。它是早期Unix系统中的标准编辑器之一,也是许多Linux发行版默认安装的编辑器之一。Vi的设计目标是提供一个简单而强大的文本编辑环境,它可以在终端中运行,没有图形界面。
Vi具有以下特点:
1、模式:Vi具有不同的工作模式,包括命令模式、插入模式和底行模式。在命令模式下,你可以执行各种编辑命令,如复制、粘贴、删除等。在插入模式下,你可以输入和编辑文本。底行模式用于执行一些高级操作,如保存文件、退出编辑器等。
2、快捷键:Vi使用一系列快捷键来执行各种操作。例如,进入插入模式可以通过按下i
键,复制一行可以使用yy
命令,粘贴可以使用p
命令等。这些快捷键使得编辑过程更加高效。
3、强大的搜索和替换功能:Vi提供了强大的搜索和替换功能,可以帮助你在文本中查找和替换特定的内容。你可以使用正则表达式进行搜索,并且可以选择性地进行替换操作。
4、高度可定制:Vi可以通过配置文件进行自定义设置,你可以根据自己的需求修改编辑器的行为和外观。你可以定义自己的快捷键、设置颜色方案等。
尽管Vi在功能和用户界面上相对简单,但它非常强大且高效。它是Unix和Linux系统中的编辑器之一,被广泛用于程序开发、系统管理和文本编辑等任务。
请注意,Vi的学习曲线可能相对陡峭,特别是对于没有使用过类似编辑器的用户来说。但一旦掌握了Vi的基本操作和快捷键,它将成为你在Linux系统中进行文本编辑的得力工具。
如果你需要更多关于Vi的详细信息和使用方法,你可以在终端中输入man vi
命令来查看Vi的帮助文档。
3. vim介绍
Vim(Vi IMproved)是Vi编辑器的改进版本,也是在Unix和Linux系统中广泛使用的文本编辑器之一。Vim在Vi的基础上增加了很多功能和改进,使得编辑过程更加高效和便捷。它是许多Linux发行版默认安装的编辑器之一,也是程序员和系统管理员常用的工具之一。
Vim具有以下特点:
1、支持多种编辑模式:Vim与Vi一样,具有命令模式、插入模式和底行模式。命令模式用于执行各种编辑命令,插入模式用于输入和编辑文本,底行模式用于执行高级操作。此外,Vim还增加了可视模式、选择模式等多种编辑模式,使得编辑过程更加灵活。
2、强大的编辑功能:Vim提供了丰富的编辑功能,包括文本搜索、替换、拷贝、粘贴、撤销/重做等。它支持正则表达式搜索和替换,可以进行全局搜索和逐个替换操作。Vim还支持分屏编辑、多文件编辑等高级功能,使得同时编辑多个文件更加便捷。
3、可定制性:Vim非常可定制,你可以通过配置文件进行个性化设置。你可以定义自己的快捷键、颜色方案、插件等,以适应自己的编辑习惯和需求。Vim的可定制性使得每个用户都可以根据自己的喜好来使用编辑器。
4、插件生态系统:Vim拥有庞大的插件生态系统,有许多第三方插件可供选择。这些插件可以增加额外的功能和特性,如代码补全、语法高亮、版本控制集成等,使得Vim成为一个功能强大的集成开发环境(IDE)。
5、跨平台支持:Vim不仅在Unix和Linux系统中可用,还可以在其他操作系统上运行,如Windows、macOS等。这使得Vim成为一个跨平台的编辑器,你可以在不同的操作系统上保持相似的编辑体验。
Vim的学习曲线可能相对陡峭,特别是对于没有使用过类似编辑器的用户来说。但一旦掌握了Vim的基本操作和快捷键,它将成为你在Linux系统中进行文本编辑和编程的得力工具。
如果你需要更多关于Vim的详细信息和使用方法,你可以在终端中输入vimtutor
命令来启动Vim的教程,该教程将帮助你逐步学习Vim的基本操作和功能。此外,Vim的官方网站和各种在线资源也提供了丰富的文档和教程供你参考。
4. vi和vim的区别
Vi和Vim是两个不同的文本编辑器,它们之间存在一些区别。以下是Vi和Vim之间的一些主要区别:
1、功能和改进:Vim是Vi的改进版本,它在Vi的基础上增加了许多功能和改进。Vim提供了更多的编辑模式(如可视模式、选择模式)、更强大的编辑命令(如多级撤销、块操作)以及更丰富的配置选项。Vim还支持更多的文件类型、颜色方案和插件,使得编辑过程更加高效和便捷。
2、兼容性:Vi是早期Unix系统中的标准编辑器,它的功能和行为在不同的Unix系统中基本保持一致。Vim在保持对Vi的兼容性的同时,增加了一些新的特性。因此,Vim可以完全兼容Vi的使用方式,而且可以在Vi的命令模式下执行Vi的命令。这使得那些习惯于使用Vi的用户可以无缝过渡到Vim。
3、可定制性:Vim相对于Vi更加可定制。Vim提供了更多的配置选项和插件支持,使得用户可以根据自己的需求进行个性化设置。你可以定义自己的快捷键、设置颜色方案、安装第三方插件等,以满足自己的编辑需求。
4、跨平台支持:Vi是在Unix系统中广泛使用的编辑器,而Vim除了在Unix和Linux系统中可用外,还可以在其他操作系统上运行,如Windows、macOS等。这使得Vim成为一个跨平台的编辑器,你可以在不同的操作系统上保持相似的编辑体验。
总的来说,Vim是Vi的升级版本,它提供了更多的功能和改进,使得编辑过程更加高效和便捷。如果你已经熟悉Vi,那么使用Vim将会更加方便,并且可以享受到更多的特性和可定制性。
5. vi和vim常用的三种模式
Vi和Vim都具有三种常用的编辑模式,它们是:
1、命令模式(Command Mode):在命令模式下,你可以执行各种编辑命令,如移动光标、删除文本、复制粘贴等。在这个模式下,键入的字符会被解释为命令,而不是插入到文本中。你可以使用各种命令来编辑和操作文本。
2、插入模式(Insert Mode):在插入模式下,你可以输入和编辑文本。按下插入命令(通常是i
键)后,你可以自由地输入文本,光标会随着你的输入移动。你可以像在常规文本编辑器中一样输入和编辑内容。
3、底行模式(Ex Mode):底行模式是一个用于执行高级操作的模式。你可以在底行模式下输入以冒号(:
)开头的命令,如保存文件、搜索替换、执行外部命令等。底行模式提供了更高级的编辑和操作功能。
这些模式之间的切换是通过按下不同的键或执行相应的命令来实现的。
在命令模式下,你可以使用以下常用命令来切换到其他模式:
进入插入模式:按下
i
键,即可进入插入模式,此时你可以开始输入和编辑文本。进入底行模式:按下冒号(
:
)键,即可进入底行模式,此时你可以输入底行命令。进入可视模式:按下
v
键,即可进入可视模式,此时你可以选择文本并执行相应的操作。
需要注意的是,Vim相对于Vi提供了更多的编辑模式,如可视模式、选择模式等,使得编辑过程更加灵活和高效。但Vi和Vim的命令模式、插入模式和底行模式的基本概念和使用方式是相似的。
6. vi和vim常用命令介绍
模式 | 命令 | 描述 |
命令模式 | i | 在当前光标位置进入输入模式 |
命令模式 | a | 在当前光标位置 之后 进入输入模式 |
命令模式 | I | 在当前行的开头,进入输入模式 |
命令模式 | A | 在当前行的结尾,进入输入模式 |
命令模式 | o | 在当前光标下一行进入 输入模式 |
命令模式 | O | 在当前光标上一行进入输入模式 |
输入模式 | esc | 任何情况下输入esc都能回到命令模式 |
命令模式 | 键盘上、键盘k |
向上移动光标 |
命令模式 | 键盘下、键盘j | 向下移动光标 |
命令模式 | 键盘左、键盘h | 向左移动光标 |
命令模式 | 键盘右、键盘l | 向后移动光标 |
命令模式 | 0 | 移动光标到当前行的开头 |
命令模式 | $ | 移动光标到当前行的结尾 |
命令模式 | pageup (PgUp) | 向上翻页 |
命令模式 | pangdown (PgDn) | 向下翻页 |
命令模式 | / | 进入搜索模式 |
命令模式 | n | 向下继续搜索 |
命令模式 | N | 向上继续搜索 |
命令模式 | dd | 删除光标所在行的内容 |
命令模式 | ndd | n是数字,表示删除当前光标向下n行 |
命令模式 | yy | 复制当前行 |
命令模式 | nyy | n是数字,复制当前行和下面的n行 |
命令模式 | p | 粘贴复制的内容 |
命令模式 | u | 撤销修改 |
命令模式 | ctrl+r | 反向撤销修改 |
命令模式 | gg | 跳到首行 |
命令模式 | G | 跳到行尾 |
命令模式 | dG | 从当前行开始,向下全部删除 |
命令模式 | dgg | 从当前行开始,向上全部删除 |
命令模式 | d$ | 从当前光标开始,删除到本行的结尾 |
命令模式 | d0 | 从当前光标开始,删除到本行的开头 |
底线命令模式 | :wq | 保存并退出 |
底线命令模式 | :q | 仅退出 |
底线命令模式 | :q! | 强制退出 |
底线命令模式 | :W | 仅保存 |
底线命令模式 | :set nu | 显示行号 |
底线命令模式 | :set paste | 设置粘贴模式 |