stdinからxxdでデータを収集する際に問題があります。stdinを使用してxxdに16進数文字列を入力しても出力が生成されません
xxd -r -p | dd of=/home/user/test/hex.bin obs=16
シェルでこのコマンドを実行すると、入力を待機します。私は '0006303030304e430006303030304e43'を入力してEnterを押してみましたが、xxdが自分の入力を得なかったか、またはddへのパイプ出力をしなかったようです。
は例えば、これは完璧に動作します:
私が達成したい何echo '0006303030304e430006303030304e43' | xxd -r -p | dd of=/home/user/test/hex.bin obs=16
: 私は、いくつかの16進文字列を入れてバイナリに変換して、16ビットのチャンクでファイルに保存したいです。スクリプトはstdinを常に聴かなければなりません。
xxdはこのように動作しますか?私は16進文字列の最後に\ nまたは\ r \ nを入れようとしましたが、xxd出力には何もありませんでした。
ありがとうございました。
よろしくお願いいたします。
問題は、私はコマンドを終了したくないということです。このようにしたいのです stdin(16進文字列) - > xxd(バイナリ) - > dd - > myfile.bin - > stdin ...などです。 – user2311165