File-Format

如何從正常執行檔中區分 AppImage 文件?

  • January 25, 2021

這個問題幾乎在標題中。如果我file在 AppImage 上啟動命令,我會得到:

ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.18, stripped

在正常執行檔上,我得到:

ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=b6e2c0d6aaa2a3cb1555e8e7511e67424eb9ebeb, stripped

是否可以通過查看file命令的輸出將第一個文件辨識為 AppImage?我應該為此目的使用任何其他命令嗎?

您可以magic number使用工具檢查文件的xxd。對於 AppImage,數字是0x414902.

xxd ucdmap.appimage-0.2.0-x86_64.AppImage| head -1
00000000: 7f45 4c46 0201 0100 4149 0200 0000 0000  .ELF....AI......

AppImage 幻數

引用自:https://unix.stackexchange.com/questions/630943