awk 命令中的两个变量
基本上我想根据染色体编号(chr1,chr2,chr3 ...)拆分lib1.vh。 但似乎在 awk 命令中有两个变量,并且它不起作用..
请参见下文:
cd /home/xug/scratch/mrfast/NA12891/
CHROM_NAME=`head -$c list_chr|tail -1`
cat lib1.vh|awk '{if ($2==$CHROM_NAME) print}'
那我该怎么办?谢谢
大家好: 我就是这样做的,而且有效!
cat lib1.vh|awk -v src=$CHROM_NAME '{if ($2==src) print}' > lib1_$CHROM_NAME.vh
Basically I want to split lib1.vh according to the chromosome number (chr1, chr2,chr3...).
But seems in the awk commands there are two variables, and it doesn't work..
Plz see below:
cd /home/xug/scratch/mrfast/NA12891/
CHROM_NAME=`head -$c list_chr|tail -1`
cat lib1.vh|awk '{if ($2==$CHROM_NAME) print}'
Then what should I do? thx
Hi guys:
I do this way, and it works!
cat lib1.vh|awk -v src=$CHROM_NAME '{if ($2==src) print}' > lib1_$CHROM_NAME.vh
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
CHROM_NAME
是一个 shell 变量,但'单引号字符串'
不会得到 shell 变量替换。也许你的意思是:
CHROM_NAME
is a shell variable, but'single quoted strings'
do not get shell variable replacement.Perhaps you meant:
环境变量显示为 ENVIRON 关联数组的元素。而不是:
你想要:
Environment variables appear as elements of the ENVIRON associative array. Instead of:
you want: