VIM 常用用法和linux常用命令
蘭雅sRGB 个人博客 https://262235.xyz
VIM 常用用法
一般模式 | 编辑模式 | 指令模式 |
---|---|---|
h 左 | a,i,r,o,A,I,R,O | :w 保存 |
j 下 | 进入编辑模式 | :w! 强制保存 |
k 上 | dd 删除光标当前行 | :q! 不保存离开 |
l 右 | ndd 删除n行 | :wq! 保存后离开 |
0 移动到行首 | yy 复制当前行 | :e! 还原原始档 |
$ 移动到行尾 | nyy 复制n行 | :w filename 另存为 |
H 屏幕最上 | p,P 粘贴 | :set nu 设置行号 |
M 屏幕中央 | u 撤消 | :set nonu 取消行号 |
L 屏幕最下 | [Ctrl]+r 重做上一个动作 | ZZ 保存离开 |
G 文件最后一行 | [ctrl]+z 暂停退出 | :set nohlsearch 永久地关闭高亮显示 |
/work 向下搜索 | :sp 同时打开两个文档 | |
?work 向上搜索 | [Ctrl]+w 两个文档设换 | |
gg 移动到文件第一行 | :nohlsearch 暂时关闭高亮显示 |
vim 格式化代码命令是等号 =
全部格式化 : gg=G 对当前行格式化(缩进): ==
删除所有行文字 ggdG 或者 :%d
ctrl+p或者ctrl+n 代码自动补全功能
表示位置的元字符
$ 匹配行尾
^ 匹配行首
\< 匹配单词词首
\> 匹配单词词尾
删除行尾的^M:%s/\r//g
删除行尾空格:%s/\s+$//g
删除行首多余空格:%s/^\s*//
删除沒有內容的空行:%s/^$//
快捷键来激活/取消 paste模式
set pastetoggle=<F11>
实际操作组合命令
- 先按i插入模式, 再键盘 F11 切换粘贴模式
- shift + Insert (做视频时笔误) 从windows 把文本粘贴进去
- 删除行首的行号:%s/^.\d//g
- 删除行首多余空格:%s/^\s*//g
- gg 到文件首行, d6 删除6行
- gg=G 格式化代码, ggdG 全删文字
tar 命令参数和示例
-c: 建立压缩文件 -x:解压 -t:查看内容
-r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件
- tar -cvf /home/123.tar my.cpp 打包,不压缩
- tar -zcvf /home/123.tar.gz my.cpp 打包gz压缩
- tar -xvf 123.tar 解开包
- tar -zxvf /home/123.tar.gz 以gzip解压
- tar -jxvf /home/123.tar.bz2 以bzip2解压
- tar -ztvf /tmp/etc.tar.gz 查看tar内容
chmod 命令用来变更文件或目录的权限
Linux用户分为:拥有者、组群(Group)、其他(other)
r=读取属性 read=4
w=写入属性 write=2
x=执行属性 execute=1
- chmod 755 list.sh // 设定脚本执行权限
- chmod -R 755 mypath // 递归设定目录权限
crontab 定时任务 [e]编辑,[l]显示,[r]删除任务
history | grep vim 列出有关vim的编辑的历史文件
Hexo环境迁移
实现方法:在Hexo仓库新建一个hexo分支存放Hexo原始文件,master分支存放hexo生成的静态页面,如果迁移环境后可以直接git clone仓库即可。
- 将Hexo仓库用git管理起来:
# 注意:不需要再编写.gitignore了,在Hexo工程已经默认有.gitignore文件了,
# 这是hexo默认生成的,也许是hexo本来就推荐用git管理hexo原始文件吧
git init
git checkout -b hexo
git add .
git commit -m "init"
git remote add origin https://github.com/hongwenjun/hongwenjun.github.io.git
git push origin hexo
- 在新的环境克隆仓库
git clone https://github.com/hongwenjun/hongwenjun.github.io.git |