Bash:比较一个值是否包含在一个区间内

Bash: compare if a value is contained within an interval

我得到了一个文本文件,它是制表符分隔的,包含 2 列,如下所示:

1227637    1298347
1347879    1356788
1389993    1399847
...        ...

现在我从分析中得到了一些值,我想检查这些值是否包含在我的文本文件间隔中。 例如,如果我有 1227659,它包含在第一个间隔中,我希望 bash-脚本打印到 std out,例如:

1227659 is contained between 1227637 and 1298347

谢谢。

怎么样:

awk -v x=1227659 '
  <x && x< {print x, "is contained between", , "and", }
' intervals.txt
1227659 is contained between 1227637 and 1298347

如果您希望间隔的任何末端被解释为包含在内,请相应地将 < 更改为 <=。如果您想在第一次匹配后停止(只有间隔可以重叠才有意义),请在右大括号 }.

之前添加 ; exit