#author("2018-02-23T03:01:34+09:00","default:nobuoki","nobuoki")
* tldr [#ca52202c]
xxd [調べたいファイル] | grep -om1 '50 *45 * 00 *00 *.. *..' | tr -d ' ' | awk '/6486/{$2="64bit"}/4c01/{$2="32bit"}{print}'

* 原理 [#z2c4a024]
Windows 64-bit 実行可能ファイル (EXE, DLL)の判別方法
http://yamori-jp.blogspot.jp/2011/03/windows-64-bit-exe-dll.html

* 解説 [#zd9af0bd]
#prism(bash){{{{
# xxd で16進ダンプ
xxd [調べたいファイル] 
# 一番最初に見つかった 0x50450000 (PE\0\0) を抜き出す
| grep -om1 '50 *45 * 00 *00 *.. *..' 
# 空白を削除(32/64bit判別と、見やすさの為)
| tr -d ' ' 
# 32/64bitの判別結果を出力
| awk '/6486/{$2="64bit"}/4c01/{$2="32bit"}{print}'
}}}}

* 補足など [#t9f8cbb6]
- xxd を使うので、vim入れてください
-- Bash on Windows とか、msys2 とか、vagrant で Linux VM 作るとかして




トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS