Linux/Shell
文章平均质量分 54
卡西莫多的礼物
享受孤独
展开
-
makeblastdb及blastn的使用
文章目录简介使用makeblastdb创建自定义搜索库blastn极短序列比对简介blast是常用的比对软件,在linux系统下安装完成blast套件后,可以使用blastn进行核酸序列的比对,基本的使用模式为确定搜索的库,然后使用blastn对指定的序列在库中进行比对,如果想要自定义搜索库,需要使用makeblastdb来创建,更多的细节可以参考blast 官方文档接下来我将介绍如何创建自定...原创 2020-03-10 18:31:21 · 30978 阅读 · 4 评论 -
Linux find命令的使用及常用参数
文章目录find命令简介使用find遍历所有文件使用find执行文件过滤使用find对搜索结果执行命令find命令简介find命令是linux下用于系统查找文件的强大工具,可以根据文件的大小,名称,权限,修改日期等进行查询,参考一些网上非常优秀的博客来进行一些简单应用向的总结。首先是find命令的使用形式:find paths expression actions指定多条路径(paths...原创 2020-01-05 15:48:10 · 625 阅读 · 0 评论 -
写shell脚本注意事项
写shell脚本的时候,为了保证无论在哪里运行脚本,其结果总是生成在指定的目录下,我们可以采取两种方式来解决这个问题,第一种方法就是使用绝对路径,例如:#!/bin/bashset -eo pipefailpython foo.py \ -i /path/to/file \ -o /path/to/output #使用绝对路径输出文件还有一种方式是使用cd directory的方...原创 2019-12-01 12:23:58 · 283 阅读 · 0 评论 -
Linux 利用数组循环编号和数组内容
有些时候,需要使用for循环循环一个以上的变量,这个时候,一种解决思路是依靠数组将一组或者多组变量进行循环,即可解决这个问题,代码如下:alist=(a b c d)other_list=(e f g h)length=${#alist[@]} #the length of alistfor idx in {0..3}doecho idx #get idxecho ${alist...原创 2019-11-17 20:42:00 · 309 阅读 · 0 评论 -
Linux 脚本移植时不使用硬链接的路径处理
文章目录问题描述移植脚本解决执行脚本解决硬链接的一种方案问题描述现在我需要将写好的一个软件从一个Linux终端移植到另一个终端,我做了如下的处理:使用rsync命令来将软件的脚本直接拷贝到新的终端发现拷贝到新终端的软链文件直接变成了软链的那个文件,当然,这是意料之中的脚本中的解释器需要特别指定路径,但是两个终端的路径不同为了解决这几个问题我做了一些尝试,最终找到了一个可供参考的解决方...原创 2019-11-11 14:50:57 · 256 阅读 · 0 评论 -
Linux下两种Shell命令while循环的使用场景
while循环的使用场景一般是读入一个文件,然后直接对文件的每一行内容进行分析,如下的使用方法可以使得while循环与管道符相连,进而不需要先输出到文件后再读取文件的步骤,如下例子:cat afile|grep -v '^#'|while read field1 field2 otherdoecho "${field1} ${field2} ${other}"echo "do some...原创 2019-10-28 14:23:15 · 752 阅读 · 0 评论 -
Linux 下载工具wget常用命令
下载较大的注释文件或者基因组文件往往会在linux系统上直接使用wget进行下载wget常用的命令如下:基本的用法为wget [options] URL常用参数如下:-b 后台下载-c 断点重连下载-o log文件名称-O 输出文件名称(即重命名)示例:wget -bc -o down.log -O download_file ftp://gsapubft...原创 2019-10-17 15:45:35 · 403 阅读 · 0 评论 -
Linux bash shell中进行运算
在Shell中进行运算可以用如下几种方式方法一:echo $((1+1)) # 2#或者((result=2*3))echo $result # 6方法二:双星号表示指数运算echo $[2**3] #8方法三:expr 1 + 2 # 3#空格是必须的expr 1+2 # 1+2需要注意的是方法三中空格是必须的,该方法在不加echo的情况下也...原创 2019-06-18 14:02:19 · 389 阅读 · 0 评论 -
Linux sort命令使用-g对科学记数法/e记法进行排序
Linux中的sort命令可以使用-g参数来对科学记数法的值进行排序,而且默认是从小到大排序,如果你是查看p值从小到大的排序,那么都不需要添加-r参数就可以拿到结果,快捷方便。其他的一些常用参数我从https://blog.csdn.net/shuanghujushi/article/details/51344215这里接了一个图,除去一下的一些参数,-V参数可以用于对染色体进行排序,先排序数...转载 2019-06-04 14:35:00 · 4885 阅读 · 0 评论 -
Linux使用while一行一行的读取文件
while read LINEdoecho $LINEdone < $FILENAME通过以上的方式,我们可以一次读文件的一行,然后逐行处理原创 2019-05-13 14:28:12 · 2973 阅读 · 0 评论 -
一个复杂的shell例子
awk -F"[ ]+" '{for(i=1;i<=NF;i++) if($i~"oss://novo-disease/") print $i}' aliyun_paths|sort|uniq|xargs -i echo ossutil -u cp -r {} |awk '{split($5,a,"/");if(a[length(a)]!='') print $0,a[length(a)]...原创 2019-05-16 11:00:16 · 561 阅读 · 0 评论 -
samtools depth 用于外显子未覆盖区域的统计及统计未覆盖区域的意义
samtools depth主要用来从bam文件中统计指定区域的深度情况。首先还是简单介绍一下samtools depth的基本用法,如下图所示我们可以通过samtools depth option 1.bam 2.bam...的方式来运行该软件,此外,最常用的参数是-r参数,我们可以指定一些区域来生成指定区域的深度情况,也可以通过输入一个-b参数输入一个bed 文件来实现该过程。 ...原创 2018-11-14 17:46:18 · 8075 阅读 · 1 评论 -
Linux awk中的print和printf的比较
awk中print与printf的主要差别显示在以下两点:print在显示多个结果的时候以逗号分隔,结果将这几部分的内容自动使用分隔符进行分隔,且不需要添加换行符\n printf可以更加灵活的控制某一个字段的输出格式,通过使用诸如%-12s,%3.1f等格式化方法现在我们通过几个例子来展示一下通过seq 10 > test.sh来创建一个文件,首先看下文件的内容$cat ...原创 2019-03-05 10:45:43 · 9202 阅读 · 2 评论 -
Linux shell使用awk循环文件字段遇到的两个易错点
今天在使用awk的时候,需要一个一个字段的去判断字段中是否含有”oss://“的内容,结果总是找不到,后来仔细检查,发现是在循环的条件上少了一个等号,这个错误需要注意awk -F"[ ]+" '{for(i=1;i<=NF;i++) if($i~"oss://novo-disease-nj") print $i}' aliyun_paths > aliyun_download_p...原创 2019-03-05 14:30:20 · 550 阅读 · 0 评论 -
shell变量的删除与替换
在读鸟哥的私房菜的时候,我学习到了shell变量的删除与替换方法,删除方法之前接触过,而替换方法则是之前没有接触过的我们用一些例子来说明一下上述的用法astr='good_good'echo ${astr#*_}goodecho ${astr#good}_goodecho ${astr%good}good_echo ${astr/good/bad}bad_good...原创 2019-03-19 16:35:38 · 425 阅读 · 0 评论 -
bcftools相关命令
bcftools最常用的子命令是index,index子命令主要用于对vcf文件进行查看,过滤和取子集。bcftools view snp.merged.vcf.gz -s C001 -t ^1 -r2,3 -Oz -o snp.chr2_3.vcf.gz这里来解释一下这些常用参数,-s为取子集用的,这里提取了snp.merged.vcf.gz文件中的样本C001的基因型注释,我们也可以...原创 2019-03-07 19:03:48 · 4706 阅读 · 0 评论 -
annovar脚本基本使用介绍
文章目录annovar软件简介convert2annovar.plannotate_variation.pltable_annovar.plannovar软件简介annovar软件是王凯教授开发的开源软件,用于对变异位点进行基因功能等相关注释,设计的注释内容非常全面,可以分为gene-based annotation,region-based annotation以及filter-based ...原创 2019-03-13 19:03:41 · 3958 阅读 · 0 评论 -
Xshell的一些相关快捷键
以下是一些与ctrl相关的常用命令Ctrl + a - Jump to the start of the lineCtrl + b - Move back a charCtrl + c - Terminate the commandCtrl + d - Delete from under the cursorCtrl + e - Jump to the end of the lin...转载 2019-05-14 14:21:59 · 194 阅读 · 0 评论 -
Linux 使用md5sum来校验文件完整性
详细用法参考博客https://www.cnblogs.com/zhuxiaohou110908/p/5786893.html这里仅展示一个简单的例子计算文件的md5值md5sum out.xls > test.md5cat test.md5#879377955bfe3a7f51f7760627922740 out.xls校验文件的md5值校验成功md5su...原创 2019-05-20 15:48:58 · 959 阅读 · 0 评论 -
Linux 使用awk的split函数来去掉文件中某个字段的某一部分
这里有一个文件如下: 我需要去掉前面的lane,那么我们来分析一下使用shell来解决的思路,grep和sed命令都是针对整行的内容进行提取的,因此无法对一行中的某个字段的内容进行修改,因此我们使用awk来解决这个问题,awk中有一些内置的方法,这里使用split来拆分字段,split()接收三个参数,第一个参数是字段,第二个参数是拆分后的数组名称,最后一个参数是separator分隔符,这里...原创 2018-11-05 16:53:26 · 4774 阅读 · 0 评论