使用vim从命令行进行文本编辑
Posted 生信菜鸟团
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用vim从命令行进行文本编辑相关的知识,希望对你有一定的参考价值。
在学习生物信息学时,你或多或少都要创建或编辑文本文件,又或者shell脚本或Python脚本。那么使用基于Unix的文本编辑器就是一个很好的选择。我看到很多人都喜欢nano,emacs或vim。我刚开始使用Vim主要它功能强大,并且还能用不同颜色显示文字。
如果你是一个新手,并尝试使用vim,你可能已经注意到它并不是那么简单易用。因为Vim有不同的模式,如果你在错误的模式下按错键,你可能会发现自己陷入了vim中,并且无法离开。在这篇推文中,我会带大家进入,简单理解Vim的使用方法。
创建一个新文件
让我们首先用vim创建一个小的bash脚本。移动到cd要创建文件的目录(使用命令),然后键入:
vi learn_vim.sh
如果此文件当前不存在,vim将打开一个新的空白文件。如果它确实存在,它将打开文件供您编辑;创建新文件和编辑现有文件都是,通过该命令完成的 vi<filename>
。
Vim将在命令模式(默认的模式)下启动,这时候你无法输入任何内容。要进入插入模式,请在键盘上按i。你可以在终端的底部看到, INSERT
,提示你已经进入插入模式。
在插入模式下,我们可以输入内容。让我们编写一个简短的bash脚本。输入以下内容:
# A short bash script
for i in `seq 1 5`
do
echo "Vim isn't as hard as it looks"
done
现在我们要保存这个新脚本,退出vim并运行它。
要退出插入模式,请在键盘中Esc按键。现在我们,已经退出出入模式,返回到命令模式,终端底部的 INSERT
已经消失了,这是我们需要输入 :wq
,对文件进行保存并退出,你的命令显示在终端的底部。
vim中的命令以冒号开头。 w
表示写入,如将文件写入磁盘(保存), q
意味着退出。
输入完命令后,现在我们在vim之外,可以运行bash脚本来查看它是如何工作的。首先,我们需要使它成为一个可执行文件,以便计算机可以读取我们在其中编写的命令:
chmod +x learn_vim.sh`
然后我们可以尝试运行脚本:
bash learn_vim.sh
你应该看到:
Vim isn't as hard as it looks
Vim isn't as hard as it looks
Vim isn't as hard as it looks
Vim isn't as hard as it looks
Vim isn't as hard as it looks
在Vim中四处移动
让我们再次打开该文件。
vi learn_vim.sh
在文件中移动的方法(这些不是唯一的方法,但我觉得最简单):
箭头键上下左右移动光标一个字符的位置
使
用Home
和End
键跳转到行的开头或结尾要通过单词向前跳(例如,如果你想在长行的中间编辑某些东西),
w
将向前跳,b
向后跳,你还可以指定要移动的单词数量; 例如3w
移动到文件的最开头
gg
,或者到最后G
现在让我们为这个bash脚本添加更多文本。在终端告诉我有关vim之后,我想在一些测序读取上运行FastQC。假设它们在/RAW/Lappan/totallyrealdata/目录中。
在vim中,输入i进入插入模式。你可以通过右键单击将从其他位置复制的文本粘贴到vim中(或命令行中的任何位置)。
# 复制完的效果这样
for data in /RAW/Lappan/totally_real_data/*.fastq
do
fastqc $data -o fastqc_out
done
后来我发现那个目录中并没有任何数据,我不想再在那个目录运行FastQC了。要删除这些行,请按Esc返回命令模式并执行以下操作:
移动到行的开头并使用
d$
删除到行的末尾如果你的光标在,在一行的末尾,
d0
将删除到开头移到行的开头,并使用
d)
删除到句子的末尾(bash循环计为句子)要从你所在的位置删除文件的其余部分,可以使用dG
如果你不小心删错了地方,要撤消上一次操作,如删除,请使用
u
。或者你想重做,使用
ctrl
+R
将重做它。
如果你不喜欢上面的修改,不想保持上面的修改的内容,使用 !q
,进行不保存就退出。
这些命令是我认为有用的命令。还有更多可以参考,https://www.maketecheasier.com/vim-keyboard-shortcuts-cheatsheet/
关于vim的颜色
我喜欢vim的是颜色。为了更好地了解当前颜色方案的外观,让我们看一下已经存在的更实质的文件。在home目录下你会有一个应 .bashrc
文件,使用以下命令打开它。
vi ~/.bashrc
可以看到效果默认的配色效果如下:
这种红蓝配色的颜色,有时候可能会看着不舒服。现在要将颜色更改为颜色desert方案,请在vim中输入:
:color desert
现在你的配色就会变成,看起来好像舒服了点:
你可以通过键入 :color
(在末尾有一个空格),然后按Tab键循环查看其他的配色。
但是,此颜色更改仅适用于你当前的vim打开的文件框,如果您离开并打开另一个文件,它将返回旧的配色。让我们退出vim,调整其配置文件,将其永久修改:
vi ~/.vimrc
这是一个配置文件,就像你的.bashrc文件一样,但对于vim。在此文件中,进入插入模式,并添加以下行:
:color desert
然后退出插入模式 Esc
,并保存并关闭文件 :wq
。使用vim打开的文件现在将始终具有你选的配色方案。如果它没有更新,你可能需要通过source,来刷新一下vim的配置:
source ~/.vimrc
简单回顾
尽管还有很多很多关于vim的知识,希望上面的知识会对你有帮助。以下是我在这篇文章中,介绍的命令,和大家简单回顾一下:
##命令 ##它能做什么
vi <filename> 在vim中打开文件
i 进入插入模式
Escape 返回命令模式
:wq 写文件并退出vim
:w 只需写入文件
:q 只是退出文件
:q! 退出文件并放弃更改
:color 循环使用可用的配色方案,更改配色方案
键盘快捷键
方向键 上下移动线条,左/右一个字符
Home 跳到一行的开头
End 跳到一行的末尾
w 向前跳一个字
b 向后跳一个字
3w 向前跳3个字(替换为任意数字)
gg 移动到文件的开头
G 移到文件末尾
} 跳到下一段
{ 跳到上一段
突出显示文字 复制文本
右键点击 粘贴复制的文本
d$ 删除到行尾
d0 删除到行的开头
d) 删除到句子的末尾(bash循环计为句子)
dG 删除到文件末尾
u 撤消上一次操作
Ctrl R 重做上一次操作
星期三是我的专题日哦,如果你喜欢我的文章,请您点一下文末右下角的好看按钮,推荐给更多好友看,也给于我更多创作的动力,如果你想了解更多,欢迎点击阅读原文,查看更多我的笔记~
如果你生信基本技能已经入门,需要提高自己,请关注下面的生信技能树,看我们是如何完善生信技能,成为一个生信全栈工程师。
▼ 如果你是初学者,请关注下面的生信菜鸟团,了解生信基础名词,概念,扎实的打好基础,争取早日入门。
以上是关于使用vim从命令行进行文本编辑的主要内容,如果未能解决你的问题,请参考以下文章