如何将具有十六进制值的字符串保存到环境变量中,然后在ruby中检索它?
目前,当我使用"\\x12\\x33"
检索它时,它将返回斜杠转义。所以它检索像"\x12\x33"
。我怎样才能这样做,以便当从ruby中恢复环境变量时,它返回相同的完整字符串s = "\x12\x33"
。
假设我有一个十六进制字符的字符串,例如
apt-get install protobuf-compiler python-pil python-lxml
我感谢任何帮助!谢谢!
答案 0 :(得分:1)
TEST='\x34\x33' ruby -e "
puts ENV['TEST'].split('\\x')[1..-1].map(&:to_i).map(&:chr)"
#⇒ "
# !
答案 1 :(得分:0)
好吧我通过首先将二进制文件写入文件然后读取它来解决这个问题。
书写
data = "\x12\x33"
File.open("data.bz2", "wb") do |f|
f.write(data)
end
阅读
file = File.open("data.bz2", "rb")
contents = file.read
print contents