たとえば、一部のプログラムでは、ファイルをシーク可能にする必要がありますobjdump
。
$ objdump -D -b binary -m i8086 <(echo 0xea 0x5b 0xe0 0x00 0xf0|xxd -r -p)
objdump: Warning: '/proc/self/fd/11' is not an ordinary file
プロセス置換で一時ファイルを使用すると便利です。
manページで、bashがプロセス置換を使用して一時ファイルにフォールバックできることを確認できますが、一時ファイルを使用するように明示的に要求できますか?
同様zsh
の=()
。
$ objdump -D -b binary -m i8086 =(echo 0xea 0x5b 0xe0 0x00 0xf0|xxd -r -p)
/tmp/zsh1u1Nrw: file format binary
Disassembly of section .data:
00000000 <.data>:
0: ea 5b e0 00 f0 ljmp $0xf000,$0xe05b
たぶん
—
cuonglm 2016年
bash
、をにHAVE_DEV_FD
設定してコンパイルしてみてください0
。
あなたはシーク可能使用することができ、ここで文字列を代わりに:
—
meuh
objdump -D -b binary -m i8086 /dev/stdin <<<$(echo 0xea 0x5b 0xe0 0x00 0xf0|xxd -r -p)
おっとっと。ここでは、文字列バージョンは黙ってヌル文字をドロップ!
—
meuh 2016年
fifoを使用した@ワイルドカードは、では不可能
—
Elazar Leibovich 2016年
objdump
です。それが問題の核心です。そうでなければ<()
十分でした。
mktemp
。