让我们说在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