本篇内容引自生信技能树
大多数Linux都会自带的文本编辑器
模式 | 操作 |
---|---|
命令模式:用vim FILENAME进入之后的默认模式 | ①①移动光标:方向键或者hjkl;②^和$:快速到所在行的开头和末尾(用0也可以到开头);③30j:向下移动30行(数字+方向进行快速移动);④ctrl+f或b:上下翻页(forward/back);⑤gg:快速回到文档的第一行的第一个字符;⑥G:快速到文件底部 (或者用 和 ) |
剪切、复制与粘贴:①x:剪切一个字符;②10x:连续剪切10个字符(numberx);③dd:剪切所在行;④10dd:剪切所在行及向下共10行;⑤yy:复制光标所在行;⑥10yy:复制所在行及下面10行;⑦p或P:在当前行的下面/上面进行粘贴 | |
撤销动作(后悔药):①u:复原前一个动作(可连续撤销);② ctrl+r:重做上一个动作 | |
编辑模式 | ①输入i后进入编辑模式(左下角有-- INSERT --提示);其实有多种进入的模式(i/a/o/I/A/O),但是记住一种即可;按esc键退出该模式;在编辑模式下即可正常的编辑、修改文本内容 |
末行模式:在命令模式下输入一个:进入这一模式,注意需要是英文的冒号,中文的冒号(全角)输入不进来,按esc键退出该模式 | 保存与退出 :①wq 保存并退出;②q 直接退出;③q! 不保存修改,强制退出 |
查询:输入/KEYWORD进行查询;按n向下查找;按N向上查找 | |
set系列命令 :①set nu 显示行号;②set nonu 取消行号;③set list 显示不可见字符(分辨制表符与空格);④set nowrap 单行显示;⑤set ff=unix 将文件格式转换为unix格式(用cat -A查看,如果出现^M的话,用这个命令去调整文件格式;用vim编辑器查看时,下面显示了dos就暗示了文件格式出了问题)。 | |
替换:①%s///g 全局替换;②s///g 替换光标所在行;③s/// 只替换光标所在行的第一次;④%s/// 只替换每一行的第一次 |
Vim 编辑器:vimtutor zh_CN 可以查看中文的教程
三架马车 | 格式 | 常见参数 |
---|---|---|
grep:文本搜索工具,它能使用正则表达式匹配模式搜索;找文件则用find这个命令。 | 格式:grep options pattern file;这里的pattern就是我们要找的文本。 | 常见参数:①-w:word 精确查找某个关键词 pattern;②-c:统计匹配成功的行的数量;③-v:反向选择,即输出没有匹配的行(过滤首选);④-n:显示匹配成功的行所在的行号;⑤-r:从目录中查找pattern,如果不知道在某个文件的话;⑥-e:指定多个匹配模式;⑦-f:从指定文件中读取要匹配的 pattern;⑧-i:忽略大小写。 |
sed:流编辑器,一般用来对文本进行增删改查。打印到屏幕上的显示了已修改,而实际上原文件并没有改动。所以称为流编辑。 | 用法:sed -options 'script' file(s);有先后顺序,先加后减。 | 常见参数:①-n :禁止显示所有输入内容,只显示经过sed处理的行(常用) ;②-e :直接在命令模式上进行 sed 的动作编辑,接要执行的一个或者多个命令;③-f :执行含有 sed 动作的文件;④-r :sed 的动作支持的扩展正则(默认基础正则) ;⑤-i :直接修改读取的文件内容,不输出。 |
'script'即address command,常见 'script' address :①2 ∶第 2 行;②2,4 ∶第 2 行到第 4 行;③2,$ ∶第 2 行到最后一行,$ 表示最后;④2~3 ∶从第 2 行开始,每隔 3 行取一行2、5、8;⑤2,+4 ∶从第 2 行到 2+4 行;⑥/pattern/ :匹配上 pattern 的行;⑦! :表示否定,取反: '2 !' 表示除了第二行。 | ||
常见 'script' command :增删改查①a∶append,在指定行的后增加一行,内容为 a 的后面接的字串;②i∶insert,在指定行的前增加一行,内容为 i 的后面接的字串;③d∶delete,删除某一行或者某几行,也可以指定删除匹配上的行;④c∶change,改变指定行的内容;⑤s∶更改或替换字符串,使用格式为 's/pattern/new/flags',把pattern替换成new,默认只替换一个,可以指定flags(g代表每一次都处理,s前面没有%代表每一行都处理;s前面的数字代表处理哪几行,flags所指代的数字代表处理第几次出现的);⑥y∶转换,实现字符一对一转换,格式 ‘y/abc/ABC/';⑦p∶print,把匹配或修改过的行打印出来,通常与–n参数合用 | ||
awk:也称 gawk,编程语言,可对文本和数据进行处理 | 常见参数:-F,fields,设置字段分隔符;用法:awk options '{script}' file;①基础结构: ' {script} ';②匹配结构: ' /pattern/{script} ';自由度很高可以不按顺序打印,但cut是很有秩序的命令。③扩展结构: 'BEGIN{script} {script} END{script}'; | awk 内置变量:⚫ FS :定义输入字段分隔符,Field Separator,同 –F;⚫ RS :定义输入记录分隔符,Record Separator;⚫ OFS :定义输出字段分隔符,Out Field Separator;⚫ ORS :定义输出记录分隔符,Out Record Separator;⚫ NF :数据文件中的字段总数,可以简单理解为列数;⚫ NR :已处理的输入记录数,可以简单理解为行数; |
awk 条件和循环语句:①if:条件判断:awk ' { if (判断条件) {yes} else {no} } '②for:循环语句:awk ' { for (循环条件) {循环语句} } ' | awk 数学运算:+ (加),- (减), * (乘),^ (幂)/ (除),** (平方), % (取余);int(x) x的整数部分,取靠近零一侧的值;log(x) x的自然对数; | |
正则表达式 | 格式:grep -E | ①^ 行首;②$ 行尾;③. 换行符之外的任意单个字符;④? 匹配之前项0次或者一次;⑤+ 匹配1次或者多次;⑥* 匹配0次或者多次; ⑦ [] 匹配任意一个;⑧^ 排除字符;⑨| 或者。 |
补充:使用$优先算括号里面的,再用md5sum指令,就不会出现warning的格式错误了。
多用tab键来补齐可以避免这个问题。
(1)在根目录下创建文件夹或者文件,是没权限的。
(2)对于某个文件我们只有只读权限,没有可执行权限,但可以用chmod命令修改。
大概率是输错了命令,多用tab键来补齐。
这里的管道符也可以用续航符来代替,但这个答案还是太复杂了,有更简单的指令。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。