讓我們說在bash腳本中存在一個值爲「001」的變量如何將這個二進制數據寫入文件,因爲位(如「001」不是「1」)echo會寫入它作爲字符串,但我想寫入比特。如何在bash中寫入二進制數據
1
A
回答
4
你可以寫在十六進制或八進制任意字節:
printf '\x03' > file # Hex
printf '\003' > file # Octal
如果你有二進制文件,這是需要一點小技巧,但你可以把它變成八進制:
printf '%o\n' "$((2#00000011))"
其中當然可以嵌套在上面:
binary=00000011
printf "\\$(printf '%o' "$((2#$binary))")" > file
請注意,這隻適用於最多8位。如果你想寫更長的價值觀,你要它分割成8
+0
寫入十進制和八進制之間的區別是寫入字節 –
+1
結果是一樣的,區別只在於你如何指定要寫入的字節。如果你想寫所有的,它是'\ xFF' vs'\ 377'。您可以使用任何你喜歡的工作。 –
2
組只需使用%b
中的printf:
printf "%b" "\012"
printf "%b" "\x0a"
%B - 打印相關的參數在解釋反斜線 轉義那裏
所以,上面都打印二進制值爲小數10
。
printf "%b" "\x0a" | od -bc
輸出
0000000 012
\n
你甚至可以混合使用
printf "%b" "\12\xa\n" | od -bc
0000000 012 012 012
\n \n \n
相關問題
- 1. 寫入二進制數據
- 2. 在R中寫入二進制數據
- 3. 如何在VBScript中將二進制數據寫入磁盤?
- 4. 如何在Delphi中將二進制數據寫入stdout?
- 5. iPhone寫入二進制數據
- 6. 使用FileSystemObject寫入二進制數據()
- 7. 將二進制數據寫入文件
- 8. 如何將二進制數據寫入R的csv文件
- 9. 如何寫入數據位以形成二進制文件?
- 10. 在ASP.NET 5中將二進制數據寫入響應
- 11. 如何在python 3的stdout中編寫二進制數據?
- 12. 在Java中寫入二進制文件
- 13. 在Ruby中寫入二進制文件
- 14. 在PROLOG中寫入二進制文件
- 15. 如何在彙編程序中將二進制數據寫入文件?
- 16. 如何在JAVA中將PNG二進制數據寫入PNG文件
- 17. 如何在Python中將二進制數據寫入文本文件?
- 18. 在bash中傳遞二進制數據作爲參數
- 19. 如何在C++中將二進制讀取/寫入轉換爲非二進制讀取/寫入
- 20. 二進制寫入地址
- 21. 寫入二進制文件
- 22. 寫入二進制文件?
- 23. 寫入二進制文件
- 24. 寫入二進制文件
- 25. 寫的字符串二進制數據的二進制文件
- 26. 如何插入十六進制/二進制?成mysql數據庫?
- 27. Python:如何將二進制數據寫入標準輸出以便bash腳本可以使用進程替換?
- 28. 如何使用C將二進制整數作爲十六進制寫入二進制文件中使用C
- 29. 我如何重寫Java中的二進制數據
- 30. 如何在Python中將BitArray寫入二進制文件
你不能單獨的位寫入文件。您可以編寫的最小數量是8位,即一個字節。 –
我該如何寫8位字符串變量說「00000011」到文件 –
@JeevansaiJinne'printf'%s'$'\ x03'>文件' – 123