减去长度元素两列

时间:2017-08-24 16:01:29

标签: bash

我有一个文件,我从中获得两列:cut -d $'\t' -f 4,5 file.txt

现在我想得到第1列和第2列之间每个元素长度的差异。

从剪切命令输入

A   T
AA  T
AC  TC
A   CT

我期待什么

0
1
0
-1

2 个答案:

答案 0 :(得分:2)

使用awk

awk ' {print length($1) - length($2)} ' cutoutput.txt
您可以在原始文件上执行

awk

awk ' {print length($4) - length($5)} ' file.txt

答案 1 :(得分:0)

您可能只能使用awk而不使用cut来执行此操作。由于您没有原始输入文件,我将使用以下|切割命令:

 cut -d $'\t' -f 4,5 file.txt | \
 awk '{for (i=1;i<NF;i++) s=length($i)-length($NF); printf s"\n"}'