linux
爱笑的小牙
要想持续有输出,就必须源源不断的输入!
展开
-
linux scp不借用第三方工具不输入密码
需求是:在A服务器运行scp传输脚本,批量下载B服务器的数据到A服务器,就需要在B服务器进行以下操作:1.进入当前用户根目录下的隐藏目录 .ssh,命令如下:cd ~/.ssh2.生成服务器的私钥和公钥:ssh-keygen -t rsa3.根据提醒输入回车,下一步:ssh-add id_rsa系统如果提示:Identity added: id_rsa (id_rsa) 就表明加载成功了下面有几个异常情况处理:–如果系统提示:could not open a conne原创 2021-12-13 14:08:56 · 545 阅读 · 0 评论 -
shell 统计大文件中某列每个字符出现的字数
对于几百万条记录的文件,用python处理起来会慢很多,这时候可以结合awk grep 等使用需求:获取2020001082.snp_indel.hg19_multianno.pro.txt 文件中第十列中每次字符的个数#!/bin/bash#for i in `cut -f 10 2020001082.snp_indel.hg19_multianno.pro.txt|sort |uniq -d # 这句总是报告代码最后一行的下面一行Syntax error: EOF in backquot原创 2020-11-06 11:52:43 · 543 阅读 · 0 评论 -
在vim 编辑器中进行文件内容的复制
在vim 模式对文件中的内容进行复制,除了常规的复制粘贴外,其实还可以进行命令操作,简单快捷 如:1.vim name.txt # 进入name文件2 假如内容只有11行,在insert 模式下,可以往下添加行号,然后按Esc键退出3.shift+: 模式后,要复制的第一行号 ,复制的最后一行号 co 要存放复制内容的行号(一般这行会空,在下一行复制)。:4,6 co 12 ...原创 2020-03-12 09:25:07 · 1778 阅读 · 0 评论 -
在window下写linux命令
在window系统下,用编辑器写shell脚本时会遇到的问题:当你的命令在终端运行没有问题,放入xx.sh文件时,会报错,比如找不到文件,或者是提示command '\r'等类似的错误提示语时,均要考虑编码问题。可以在.sh文件中输入:set ff=unix:wq即可。如对文件中每一行进行操作的脚本#bashcat BRCA1_2.designed.bed|whi...原创 2020-02-05 10:57:31 · 346 阅读 · 0 评论 -
使用所读取的内容为文件命名时乱码
要批量查找snplist.txt文件里的rs号是否在已经得到注释好的文件时,批量查找,用#bin/bashcat snplist.txt|while read linedogrep -w ${line} XX.hg19_multianno.csv >>XX.txt done# grep "ab" 会找到结果为ab ,abc, abd, abt等,为模糊查找...原创 2019-04-08 14:15:14 · 281 阅读 · 0 评论 -
查看感兴趣的snp是否被测到
针对现在已有的rs号,想查看这些点在全外数据中是否被测到。因为目前只是有rs号,所以首先需要得到这些rs号所在的位置,然后去bam文件查看是否测到。1,拿到rs号去进行annovar注释,得到rsid.hg19_multianno.txt。/media/gsadmin/vd2/tmp/software/annovar/convert2annovar.pl -format rsid rsi...原创 2019-04-03 16:01:38 · 571 阅读 · 0 评论 -
gitforwindows 在windows下进行操作
gitforwindows 看名字,就知道是一个为windows服务的软件,可以在windows下进行shell的操作,虽然只是部分,但是也有两百多个,最常见的也是有的,比如awk,cat,cut,sed,scp等。进入官网点击下载,就会自动根据你的电脑选择对应的版本,下载完成后,双击安装,一路next下来,就可以了。不过安装好后,没有看到快捷方式,鼠标右键会看到 Git Gui Here 和...原创 2019-04-20 10:21:15 · 382 阅读 · 0 评论 -
xargs的用法
最近看很多脚本有用xargs,只是大概知道是做什么的,自己没用过,特别学习一下。xargs 可以读入 stdin 的资料,并且以空白字元或断行字元作为分辨,将 stdin 的资料分隔成为 arguments 。 因为是以空白字元作为分隔,所以,如果有一些档名或者是其他意义的名词内含有空白字元的时候, xargs 可能就会误判了,如果需要处理特殊字符,需要使用-0参数进行处理。1.-0 :当...原创 2019-04-29 14:29:22 · 449 阅读 · 0 评论 -
linux 下的${i%%.*}
最近看大佬写的流程,发现这个用法也用的多,自己实践了下它的用法,才知道是什么意思i=sftr.realgn.bamecho ${i%%.*}sftrn=123,234,68echo ${n%%,*}123原来是提取第一个.前面的内容...原创 2019-04-29 22:09:56 · 5052 阅读 · 1 评论 -
LINUX 提示bad variable name
运行已经写好的.sh脚本后,在终端运行时提示找不到这个文件,并且提示:bad variable name原因是:脚本是在window下用notpad++写的,window和linux的编码不同解决办法:vim name.sh 进入该文件的编辑状态输入内容 :set ff=unix #这是进行编码切换 :wq #保存退出...原创 2019-03-27 09:35:08 · 10301 阅读 · 0 评论 -
liunx下选择文件大小为0的文件
查找当前路径下所有文件大小为0的文件,并输出这些文件的名字find . -name "*" -type f -size 0c > out.txt#find . -name 之间有空格修改对应的 -size 参数就可以查找指定大小的文件,如1k大小的文件(注意不要用 -size 1k,这个得到的是占用空间1k,不是文件大小1k的)find . -name "*" -typ...原创 2019-04-04 11:14:38 · 4195 阅读 · 0 评论 -
linux中的sed命令
本文来自生信宝典-Linux教程sed 是stream editor 的简称,擅长对文件进行各种正则操作、插入操作、替换操作和删除操作,可以全局,可以指定特定范围的行或者特定特征的行。s/pat/replace/: 正则替换前插行i, 后插行a, 替换行c, 删除行d, 输出行pN: 读入下一行,同时存储;n: 读入下一行,抛弃当前行sed 's/pat/replace/' f...翻译 2019-02-28 11:33:10 · 332 阅读 · 0 评论 -
linux的简单操作
cat 是一个命令,主要用来查看文件;在这与<<END 连用用于读入大段数据。输入cat <<END 之后,回车,会看到终端出现一个大于号,大于号后面可以输入内容,再回车,继续输入内容,直到我们输入END (大写的,与上面一致),输入过程结束,我们输入的内容都显示在了屏幕上。> 是一个重定向符号,即把前面命令的输出写入到> 后面的文件中。如下所示,新建了...转载 2019-02-20 15:04:52 · 296 阅读 · 0 评论 -
linux中的bash操作符
1.字符串操作符(替换操作符)${var:-word}: 如果var 存在且不为空, 返回它的值, 否则返回word${var:=word}: 如果var 存在且不为空, 返回它的值, 否则将word 赋给var, 返回它的值${var:+word}: 如果var 存在且不为空, 返回word, 否则返回空${var:?message} 如果var 存在且不为空, 返回它的值,否则显示...翻译 2019-03-05 15:04:27 · 687 阅读 · 0 评论 -
awk中的ARGIND
转载原文:https://blog.csdn.net/liuzhoulong/article/details/7879300 ARGC The number of command line arguments (does not include options to gawk, or the program source). 命令行参数的...转载 2019-02-27 09:48:29 · 3074 阅读 · 0 评论 -
awk 基本参数解释
本文来自生信宝典-Linux教程76页awk 擅长于对文件按行操作,每次读取一行,然后进行相应的操作。awk 读取单个文件时的基本语法格式是awk 'BEGIN{OFS=FS="\t"}{print $0, $1;}' filename。读取多个文件时的语法是awk 'BEGIN{OFS=FS="\t"}ARGIND==1{print $0, $1;}ARGIND==2{print...转载 2019-02-27 15:35:19 · 1582 阅读 · 0 评论 -
多种文件的合并
1.常规文件合并cat file1 file2 >file2.合并vcf文件cat 1.vcf 2.vcf>3.vcf3.合并bam文件samtools merge out.bam in1.bam in2.bam4.合并fastq.gz文件cat file1.gz file2.gz file3.gz > allfiles-cat.gz...原创 2019-03-15 15:01:38 · 2279 阅读 · 0 评论 -
linux 提取指定的列
# 提取name.txt 文件中的最后一列中以:分割的第二列 awk(符截取命令)awk -F '\t' '{print $NF}' name.txt|awk -F ':' '{print $2}'>res.txt其中-F 表示分割符,$NF表示最后一列,$(NF-1)表示倒数第二列 $2表示第二列 ,$0表示全部,$1表示第一列#把上一步的数据和name.txt文件合并生成一...原创 2019-03-21 08:52:57 · 39589 阅读 · 0 评论 -
Linux软连接和硬链接
最近在做项目时,看到 ->,百度了下,才知道是软连接。顺便知道了硬链接和软链接的区别。Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。硬连接硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode In...转载 2018-07-18 21:17:41 · 153 阅读 · 0 评论