मैं dd के साथ कुछ ट्रिक्स करने की कोशिश कर रहा हूँ। मुझे लगा कि इसे dd में पाइप करने के लिए "हेडर" नामक वैरिएबल में कुछ हेक्सवेल्यूज़ को स्टोर करना संभव होगा।
एक चर के बिना मेरा पहला कदम यह था:
$ echo -ne "\x36\xc9\xda\x00\xb4" |dd of=hex
$ hd hex
00000000 36 c9 da 00 b4 |6....|
00000005
उसके बाद मैंने यह कोशिश की:
$ header=$(echo -ne "\x36\xc9\xda\x00\xb4")
$ echo -n $header | hd
00000000 36 c9 da b4 |6...|
00000004
जैसा कि आप देख सकते हैं कि मैंने चर \x00
में अपना मूल्य खो दिया है $header
। क्या किसी के पास इस व्यवहार के लिए स्पष्टीकरण है? यह मुझे पागल बना रहा है।
header="$(echo -ne "\x36\xc9\xda\x00\xb4")"; echo -n "$header" | hd
लेकिन यह सिर्फ एक ही परिणाम देता है होना चाहिए ।
header="\x36\xc9\xda\x00\xb4"; echo -n "$header" | hd
, लेकिन यह एक ही चीज नहीं है क्योंकि यह मानव के पठनीय रूप को संग्रहीत कर रहा है।
bash: warning: command substitution: ignored null byte in input
।