vim文本编辑器(和vi文本编辑器功能相同,略微有所差别)
vim 文本编辑器
vi 文本编辑器
#vim FILENAME (编辑一个文件,没有文件则会创建文件)
vim是vi的扩展工具,居于配置文件会有一些颜色标记以及语法检测,对于文本编辑区功能基本上相同,能使用vim就尽量使用。
编辑模式(vim指令打开终端的最后一行来判断)
命令模式:(可以执行一些便捷指令)
下面所示的各种命令,光标均以下图所示位置执行
d + enter 删除光标所在行以及下一行
dd 删除光标所在行
3dd 从光标所在行开始一共删除3行
dG 删除光标所在行,以及到文档末
dgg 删除光标所在行,以及到文档首
s 替换,替换光标所在字符 (删除光标所在字符)--进入插入模式
S 替换,替换光标所在行 ---进入插入模式
x 删除光标
G 跳转到文档末行的行首
gg 跳转到文档首行的行首
5G 跳转到文件的第五行
^ 光标跳转到行首
$ 光标跳转到行尾
yy 复制光标所在
4yy 复制从光标开始一共四行
4,8yy 复制从4-8共五行
p 粘贴在光标下一行
cc 剪切光标所在行 ---进入插入模式
u 向左撤销
ctrl + r 向右撤销
插入模式:(编辑区里的波浪线和输入的波浪线不同) esc 退出
s 删除光标所在字符进入插入字符
S 删除光标所在行进入插入模式
a 插入光标后
A 插入到光标所在行的行末
i 插入光标前
I 插入光标所在行的行首
o 插入到光标所在行的下一行
O 插入到光标所在行的上一行
末行模式:
:w 写入保存
:w FILENAME
:q 退出
:q! 强制退出
:wq! 写入保存并强制退出
:set nu 显示行号
:set nonu 取消行号
:s /root/000/ 将root换成000
:%s /root/000/ 匹配所有行第一次出现的root关键,字替换为000
:%s /root/000/g 匹配所有行中所有root关键,字替换为000
:12, 18 co 40 将12行到18行复制到40行后
:r FILENAME 将指定文件内容读取到光标所在下一行
: . ! cat /etc/passwd 将cat/etc/passed命令的结果显示在文档中
/ 匹配关键字
:noh 取消关键字的高亮显示
echo 打印标准输入输出
$ 引用变量
$? 上一条命令的返回结果(0-255) 零是成功 非零是失败 (退出码)
#echo $SHEILS 打印变量值
#echo $? 查看上一条命令的返回值
" " (双引号) 弱引用 可以解析特殊字符的含义 可以显示变量的值
’ ‘ (单引号) 强引用 不可解析特殊字符的含义 不可显示变量的值
` ` (反引号) 命令强替
Linux 中的程序对于文件描述符 0 1 2 标准输入 1 标准输出 2 错误输出
> 输出重定向符,将程序的输出结果重定到指定文件 1> 2>
>> 追加输出重定向符 将前一共命令输出(正确或错误)结果写入一个文件
< 输入重定向符
<< 终止结束符
| 管道符 将前一个程序(命令)的输出结果通过管道符按照字符流的形式传递给后面程序继续对字符流进行处理
| tee T管道符 | tee -a
横向输出 将程序的输出结果定到指定文件
纵向输出 将程序的输出结果显示到终端
文本内容处理相关的命令
(1) 通过处理命令只是将处理结果显示在终端不会对源文件更改
(2) 按照指定文件的行进行处理
cut 文本剪切
- c 字符
- d 分割类类型
- f 指定字段
sort 文本排序
- n 数值升序(从小到大)
- r 数值降序(从大到小)
- u 去重
- t 分割符
- k 字段
uniq 去重(相邻文件才会去重处理)
sort -u == sort | uniq
- c 统计每一行重复次数
- d 查看重复行的内容
- D 查看所有重复行的内容
wc ( word count ) utf - 8 的编码格式 (一个字母一个字节,汉字三个字节,繁体字四个字节)
- | 行数
- w 单词数
- c 字节
- m 字符
tr 字符替命令( :%s/root/123/)
tr set1 set2
tr ab 123
tr - t 等长字符替换
- c 反选定
- d 删除指定符号
- s 将多个连续重复的字符替换成单个字符
grep 文本关键字过滤显示 文本三剑客 grep sed awk
grep '模式匹配’ FILENAME
- i 忽略大小写
- o 只显示关键字
- v 反过滤