Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 用于扣减列的循环_Bash_For Loop_Awk - Fatal编程技术网

Bash 用于扣减列的循环

Bash 用于扣减列的循环,bash,for-loop,awk,Bash,For Loop,Awk,我有一个问题,我想从文件中的$2列中扣除$3,但要与文件中的所有行分开,并将所有行的结果除以/n。你能帮我吗? 我创造了这个,但它是不对的 for i do awk'{(NR = i , i++) print($3-$2)}'; done 输入文件: chr1 10 12 chr1 14 19 chr1 22 96 输出文件: 2 5 74 这条线应该可以工作: awk '{$0=$3-$2}7' input 不需要循环,只要做就行 awk '{

我有一个问题,我想从文件中的$2列中扣除$3,但要与文件中的所有行分开,并将所有行的结果除以/n。你能帮我吗? 我创造了这个,但它是不对的

for i  
do awk'{(NR = i , i++) print($3-$2)}'; done
输入文件:

chr1 10 12

chr1 14 19

chr1 22 96
输出文件:

2      
5      
74     
这条线应该可以工作:

awk '{$0=$3-$2}7' input

不需要循环,只要做就行

awk '{ print $3-$2 }' file
怎么样

awk '{print $3 - $2}' test.txt

这将从第三列中减去第二列,并写入每行的结果。

因为一个答案已被接受,但可能双方都没有注意到源文件中有空行,使用这些命令,输出将有大约0行

应将脚本更新为:

awk 'NF>2{print $3 - $2}' file

如果您提供实际数据和预期结果的示例,可能会有所帮助。写入所有行的结果除以/n的确切含义是什么?源文件的编辑版本中有空行不是由OP编辑的。也就是说,如果OP关心空行/0,那么加1显然是可行的。
awk 'NF>2{print $3 - $2}' file