我的文件夹中包含文件名按顺序编号(十六进制)的文件:
00001a08
00001a09
00001a0a
00001a0b
<---
00001a32
00001a33
有没有办法使用 Linux 工具来查找序列中的间隙,例如<---
突出显示的间隙?
到目前为止,我只有一个想法,将文件列表导出到 Excel,然后使用公式检查每个条目与其前一个条目的“距离”?(参见找出连续时间列表中的间隙)。如果我需要时不时地检查一下,那么绕道通过 Excel 就有点麻烦了。
答案1
使用bash:
i=0
for x in *
do
if (( 16#$x > 16#$i + 1 ))
then
echo "gap $i .. $x"
fi
i="$x"
done
输出
gap 0 .. 00001a08
gap 00001a0b .. 00001a32
如果你不想要第一个结果,那么请i=ffffffff
改为i=0