在 Linux 中尋找連續十六進位編號檔案名稱中的間隙

在 Linux 中尋找連續十六進位編號檔案名稱中的間隙

我有包含檔案名稱依序編號(十六進位)的檔案的資料夾:

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

相關內容