一、文件重定向
Linux中认为一切皆文件 |
| 文件描述符(数字) |
标准输入 | 从键盘获取数据 | 0 |
标准输出 | 在屏幕上显示正确的数据 | 1 |
标准错误 | 在屏幕上显示错误的数据 | 2 |
文件重定向方式:
1、使用 '>' 进行文件重定向
默认是把标准输出内容定向到其他文件
使用方式:
命令 (文件描述符) > 文件
例:history > a 将history的输出内容写到文件a中
llllll 2 > a 2表示标准错误,将标准错误的输出导入文件a中,正确指令输出则不导入
注意:> 会先将右侧文件清空,再写入新内容
2、'>>' :不清空,追加写入
例: ls >> a
3、一个特殊的文件:/dev/null
所有写入到该文件的内容都会被清空(类似于黑洞)
例:ls > /dev/null 2>&1 (&1前面的&不能少,不然会认为1是一个文件)
二、文件编辑:
1、图形界面的编辑器:gedit
2、终端文件编辑器:vi vim(vi加强版)
三、命令行
1、跳转
G | 跳到最后一行 |
gg | 回到第一行 |
nG | 跳到第n行 |
n+方向键 | 移动n个单位 |
0(数字) | 跳到当前行的起始位置 |
$键 | 跳到当前行的末尾 |
w | 往后跳一个单词 |
nw | 往后跳n个单词 |
2、删除
dd | 删除当前行 |
ndd | 删除n行 |
dw | 删除某个单词 |
D | 删除当前光标后的内容 |
d0(数字0) | 删除当前光标前的内容 |
x | 删除当前字符 |
3、恢复
u | 恢复上一次的操作 |
Ctrl+r | 撤销上一次的恢复 |
4、复制粘贴
yy | 复制 |
nyy | 复制n行 |
yw | 复制一个单词 |
y$ | 复制当前行光标后的内容 |
y0(数字0) | 复制当前行光标前的内容 |
p | 粘贴 |
np | 粘贴n次 |
5、其他
r | 替换单个字符 |
R | 从光标开始,下次输入的内容依次替换后面的内容 |
% | 大括号对应 |
gg=G | 自动格式化格式 |
四、底行命令
1、查找
/要查找的内容 | 从上往下查找 |
?要查找的内容 | 从下往上查找 |
n:指下一个
2、替换
s/old/new | 用new替换old | 只替换当前行第一个old |
s/old/new/g | 用new替换old | 替换下当前行所有old |
m,ns/old/new/g | 用new替换m~n行所有的old |
|
%s/old/new/g | 用new替换所有的old | 替换时没有提示 |
%s/old/new/gc | 用new替换所有的old | 替换时会有提示 |
3、分屏
sp 文件名 | 垂直分屏 |
Ctrl+ww(命令行模式) | 切换分屏 |
vsp 文件名 | 水平分屏 |
注:不加文件名,默认为当前文件
4、其他
!命令 | 执行外部命令 |
set nu | 设置显示行号 |
set nonu | 设置不显示行号 |
syntax on | 设置语法高亮(即语法单词变色) |
syntax off | 取消高亮 |
五、vim配置
vim 的配置在目录 /et/vim/vimrc