- Linux管理员教程
- 首页
- CentOS概述
- 基本的CentOS Linux命令
- 文件/文件夹管理
- 用户管理
- 配额管理
- Systemd服务启动和停止
- 使用systemctl进行资源管理
- 使用cgroups进行资源管理
- 进程管理
- 防火墙设置
- 在CentOS Linux中配置PHP
- 在CentOS Linux中设置Python
- 在CentOS Linux上配置Ruby
- 为CentOS Linux设置Perl
- 安装和配置Open LDAP
- 创建SSL证书
- 安装Apache Web服务器CentOS 7
- 在CentOS 7上设置MySQL
- 设置Postfix MTA和IMAP/POP3
- 安装匿名FTP
- 远程管理
- CentOS中的流量监控
- 日志管理
- 备份和恢复
- 系统更新
- Shell脚本
- 包管理
- 卷管理
- Linux管理员有用资源
- Linux管理员 - 快速指南
- Linux管理员 - 有用资源
- Linux管理员 - 讨论
Linux管理员 - 使用vi/vim文本编辑器
vim 代表的是vi文本编辑器在Linux上的一个更新、改进的版本。vim默认安装在CentOS 7(CentOS的最新版本)上。但是,一些较旧的和最小化的基础安装默认情况下只包含原始的vi。
vi和vim之间最大的区别在于vim具有更高级的易用性功能,例如使用箭头键移动光标。vim允许用户使用箭头键浏览文本文件,而vi则只能使用“h”、“j”、“k”、“l”键,如下所示。
vi 文本文档导航 −
按键 | 动作 |
---|---|
j | 向下移动一行 |
k | 向上移动一行 |
l | 向左移动一个字符 |
h | 向右移动一个字符 |
使用vim,可以使用标准英文(和其他常用语言)qwerty键盘布局上的箭头键来完成相同的操作。类似地,vi通常也无法解释数字键盘。
现在,vi通常会符号链接到vim。如果您发现按下箭头键时出现意外情况,请尝试使用您的包管理器安装vim。
vim在操作和打开文件时使用模式的概念。我们将重点关注的两种模式是 −
普通模式 − 这是vim在第一次打开文件时使用的模式,允许输入命令
插入模式 − 插入模式用于实际编辑文件中的文本。
让我们在vim中打开一个文件。我们将使用位于/usr/share/dict的CentOS默认字典 −
[root@localhost rdc]# cp /usr/share/dict/words
您看到的是以普通模式打开的文本文件。现在练习使用箭头键浏览文档。另外,尝试使用h、j、k和l键浏览文档。
Vim 期望我们发送文件操作命令。要启用行号,请使用冒号键:shift+:。您的光标现在将出现在文档底部。键入“set nu”,然后按回车键。
:set nu
现在,我们将始终知道我们在文件中的位置。这在vim中编程时也是必要的。是的!vim具有最佳的语法高亮显示功能,可用于创建Ruby、Perl、Python、Bash、PHP和其他脚本。
下表列出了普通模式中最常用的命令。
命令 | 动作 |
---|---|
G | 转到文件末尾 |
gg | 转到文件开头 |
x | 删除选定的字符 |
u | 撤销上次修改 |
Enter | 向前跳转多行 |
dd | 删除整行 |
? | 搜索字符串 |
/ | 转到下一个搜索结果 |
请尝试在vim中执行以下任务,以熟悉它。
搜索字符串“test”,然后是前5个结果
找到“test”的前5个结果后,移动到文档开头
使用Enter键转到第100行
使用“x”删除整个单词
使用“u”撤销删除操作
使用“dd”删除整行
使用“u”恢复该行
我们假设我们对一个关键文件进行了编辑,并且想要确保不保存任何意外更改。按shift+: 并键入:q!。这将退出vim,并丢弃所做的任何更改。
现在,我们想在vim中实际编辑一个文件:在控制台中键入:vim myfile.txt
我们现在正在查看vim中一个空白的文本缓冲区。让我们写一些内容:例如 - 按“i”。
vim 现在处于插入模式,允许我们像在记事本中一样编辑文件。在缓冲区中键入几段文字,任何您想要的内容。稍后,请按照以下步骤保存文件 −
步骤1 − 按Esc键
步骤2 − 按shift+
步骤3 − 键入`:w myfile.txt` 并按Enter键
步骤4 − 按shift+:
步骤5 − 键入q! 并按Enter键
我们刚刚创建了一个名为myfile.txt的文本文件并保存了它 −
[root@localhost]# cat myfile.txt this is my txt file. [root@localhost]#
Linux文件输入/输出重定向
管道字符“|”将第一个命令的输出传递给下一个命令。这称为标准输出或stdout。另一个常见的Linux重定向器是标准输入或stdin。
以下是两个示例;第一个使用cat命令将文件内容输出到stdout。第二个使用cat命令使用standardinput重定向器读取文件并输出其内容。
STDOUT
[root@centosLocal centos]# cat output.txt Hello, I am coming from Standard output or STDOUT. [root@centosLocal centos]#
STDIN
[root@centosLocal centos]# cat < stdin.txt Hello, I am being read form Standard input, STDIN. [root@centosLocal centos]#
现在,让我们将cat的stdout“管道”到另一个命令。
[root@centosLocal centos]# cat output.txt | wc -l 2 [root@centosLocal centos]#
在上面,我们将cat的stdout传递给wc以处理管道字符。然后,wc处理来自cat的输出,将output.txt的行数打印到终端。将管道字符视为一个“管道”,它将一个命令的输出传递给下一个命令进行处理。
以下是处理命令重定向时要记住的关键概念。
编号 | 文件描述符 | 字符 |
---|---|---|
0 | 标准输入 | < |
1 | 标准输出 | > |
2 | 标准错误 | |
追加stdout | >> | |
赋值重定向 | & | |
管道stdout | | |