移动app与网站建设的区别,做鞋子皮革有什么网站,服务器网站别名设置,网页制作与设计课本Linux进阶
Vim——Linux自带的文本编辑器
功能强大 命令模式
使用 vim file进入后的默认模式可以上下左右移动光标 方向键/hjkl快速到所在行的开头^/末尾$向下移动30行30j#xff08;上左右同#xff09;上下翻页Ctrlf向上#xff0c;Ctrlb向下翻页快速回到文件第…Linux进阶
Vim——Linux自带的文本编辑器
功能强大 命令模式
使用 vim file进入后的默认模式可以上下左右移动光标 方向键/hjkl快速到所在行的开头^/末尾$向下移动30行30j上左右同上下翻页Ctrlf向上Ctrlb向下翻页快速回到文件第一行的第一个字符gg快速回到文件底部第一个字符G 可以剪切字符/整行、也可以复制粘贴 剪切x连续剪切10个字符10x剪切所在行dd,剪切所在行及向下共10行10dd粘贴到所在行的下面p/上面P粘贴复制光标所在行yy,复制所在行及下面10行10yy 撤销u重做上一个动作Ctrlr
编辑模式
输入i后进入编辑模式
按Esc退出编辑模式
末行模式
在命令模式下输入:
按Esc退出该模式
在该模式下可以设置、查询、替换、保存并退出保存退出 保存并退出wq直接退出q不保存修改强制退出q! 查询 输入/KEYWORD进行查询按n向下查找按N向上查找 替换 :%s///g全局替换:s///g替换光标所在行:s///只替换光标所在行的第一次出现
set系列命令
:set nu显示行号:set nonu取消显示行号:set list显示不可见字符分辨制表符表格等:set nowrap单行显示:set ff-unix将文件格式转换为unix格式 ff file format文件格式
不同平台关于回车键的设置不同Windows: \r \n; Mac: \r; Linux: \n. 解决方法之一vim中的:set ff-unix。解决方法之二dos2unix (unix2mac…)
异常情况处理 E325:ATTENTION swp文件使用vim编辑的时候未保存产生的缓存的文件 第一种情况为其他程序正在修改。 第二种情况为保存修改之前和服务器断开连接。 可以-rrecovery恢复恢复保存后删除缓存文件[swp]。 vim的帮助文档vimtutor zh_CN
文本处理的三驾马车
grep
一种强大的文本搜索工具可以匹配正则表达式 格式grep [options] ‘pattern’ file 常见参数 -w 精准查找某个关键词word -c统计匹配成功的行的数量 -v 反向选择输出没有匹配的行 -n 显示匹配成功的行的所在行号 -r 从目录中查找pattern显示所在行 在目录中的所有文件中查找不会查找压缩文件 -e 指定多个匹配模式 cat file | grep -w -e exon -e UTR #-e和pattern成对出现-f 从指定文件中读取要匹配的pattern 使用vim把多个个关键词写入file2中一行一个 -i 忽略大小写 正则表达式 ^行首 $行尾 .换行符之外的任意单个字符 ? 匹配前一字符出现了0次/1次的情况扩展正则表达式需要使用\?或在参数位置使用-E开启优先正则表达式模式来匹配? 匹配前一字符出现了1次/多次的情况扩展正则 * 匹配前一字符出现了0次/多次的情况 [] 匹配任意一个字符 [AT]匹配A/T [^] 排除字符 [^aB] |或
sed
流编辑器一般对文本进行增删改查
针对行进行的动作 用法sed [-options] ‘script’ file(s) 常见参数[-options] -n 禁止显示所有输入内容只显示经过sed处理的行常用-e 直接在命令模式上进行sed的动作编辑接要执行的一个或多个命令-f 执行含有sed动作的文件-r sed的动作支持扩展正则-i 直接修改读取的文件内容,会直接修改源文件 动作script[address]command address 2第2行 2,4第2-4行 2,$第2行到最后一行 2~3从第2行开始每隔3行处理一次2、5、8 24从第2行开始到第24行 /pattern/匹配上pattern的行 !表示否定取反例如2表示动作在除了第二行以外的行 command增改删查 a (append) 在指定行后增加一行内容为a后面接的字符串 i (insert) 在指定行的前增加一行内容为i后面接的字符串 d (delete) 删除某一行或某几行 c (change) 改变指定行的内容 s 更改或替换字符串使用格式s/pattern/new/[flags]意为把pattern替换成newflags表示替换第几个1/2/g y 转换实现字符一对一转换格式y/abc/ABC 意为abc一对一替换成ABC符号也支持 p (print) 把匹配或修改过的行打印出来通常与-n 参数合用
awk
也成为gawk编程语言可对文本和数据进行处理 常见参数 -F (fields)设置字段分隔符 用法awk [options] ‘{script}’ file ##基础结构
{script}
##匹配结构
/pattern/{script}
##扩展结构
BEGIN{script} {script} END{script}awk使用预定义的字段分隔符划分每个数据字段分配给一个变量。 $0 代表整个文本行 $1 代表文本行的第一个数据字段列 。。。 $NF 代表文本行的最后一个数据字段列 默认分隔符是任意空白字符空格/制表符也可以使用参数-F自定义分隔符 内置变量 FS 定义输入字段分隔符RS 定义输入记录分隔符OFS 定义输出字段分隔符ORS 定义输出记录分隔符NF 数据文件中的字段总数简单理解为列数NR 已处理的输入记录数可以简单理解为行数 cat Data/example.gtf | awk BEGIN{OFS :} {print $3,$4,$5} | head -5
cat Data/example.gtf | awk BEGIN{FS\t;OFS;} {print NR, $9}|head -5awk条件和循环语句 if条件判断 awk {if(条件) {yes} else {no}}
#例子
awk{if($3gene) print $0} ##类似R逻辑值去子集awk数学运算 cut的默认分隔符是分隔符awk的列之间是根据写法不同改变。
Linux常见符号及其含义 引用自生信技能树课程~ 今天内容比较多一些还需要时间消化还是先记下来以后慢慢理解~