当前位置: 首页 > 面试题库 >

如何在Linux Shell中将十六进制转换为ASCII字符?

仲孙宇定
2023-03-14
问题内容

可以说我有一个字符串5a

这是ASCII字母的十六进制表示Z

我需要知道一个Linux shell命令,该命令将接受一个十六进制字符串并输出该字符串表示的ASCII字符。

因此,如果我这样做:

echo 5a | command_im_looking_for

我会看到一封单独的信Z

Z

问题答案:
echo -n 5a | perl -pe 's/([0-9a-f]{2})/chr hex $1/gie'

请注意,这不会跳过非十六进制字符。如果只需要十六进制(原始字符串中没有空格等):

echo 5a | perl -ne 's/([0-9a-f]{2})/print chr hex $1/gie'

此外,zshbashecho以下方面提供本机支持:

echo -e '\x5a'


 类似资料:
  • 问题内容: 我正在编写一个go程序,将十六进制转换为int,binary和ascii。int和二进制文件工作正常,但是ascii引起了问题。如果输入的文本少于2个字符,则可以正常工作,但是如果输入的文本过多,则会导致出现格式错误的文本。我的代码如下: 输入十六进制“ 73616d706c65 ” 时的一些输出示例: 我已经做了很多搜索,并且看到了一些有关“符文”的文档,但是我不确定这是如何工作的。

  • 问题内容: 我有兴趣选择一个角色, 输出: 最简单的方法是什么?任何预定义的字符串库的东西? 问题答案: 要在Python 3中使用编码,请使用 在旧版Python中,还有其他几种方法可以执行此操作:

  • 问题内容: 我在ex中有整数。16,我正在尝试将此数字转换为十六进制数字。我试图通过使用十六进制函数来实现此目的,但是每当您向十六进制函数提供整数时,它都会返回十六进制数字的字符串表示形式, 有人可以告诉我如何将字符串格式的十六进制数字转换为简单的十六进制数字。 谢谢!! 问题答案:

  • 问题内容: 我编写了一个简单的程序,用于在Java中向串行端口发送和接收数据。我通过回送测试(Rx到Tx)连接串行端口设备。它工作正常。但我无法发送和接收十六进制数据到串行端口和接收串行端口。在我的设备中使用了FT232BL芯片,因此是否需要任何dll或其他库来将十六进制数据发送和接收到串行端口设备。我的代码如下。 问题答案: 十六进制: 十六进制为:

  • 我试图在PHP中从ASCII转换为十六进制,但得到的结果与一些可用的在线工具不同。我知道我正在寻找的结果,所以在线工具的结果似乎是正确的,我的代码是错误的,但我无法找出原因。 我的剧本: 错在哪里?

  • 本文向大家介绍如何将十六进制转换为十进制?,包括了如何将十六进制转换为十进制?的使用技巧和注意事项,需要的朋友参考一下 而十六进制数是具有值是16的数字系统中的一个并且它具有唯一的16个码元:0,1,2,3,4,5,6,7,8,9和A,B,C,d,E ,其中A,B,C,D,E和F分别是十进制值10、11、12、13、14和15的单位表示。而十进制系统是最熟悉的号码系统向公众开放。它是10的基数,只