如何在shellscript中存储十六进制值
我不熟悉shellscript 我有这个节目如何在shellscript中存储十六进制值,shell,Shell,我不熟悉shellscript 我有这个节目 for(( s=0x001; s <=0x00f; s++)) do echo $s done 这里的应该包含十六进制值。如何做 我认为printf“%x”$s应该可以。它是POSIX标准的一部分,在bash中作为内置命令实现: $ type printf printf is a shell builtin …因此可以在manbash中找到文档,至少对于bash shell是这样。我认为printf“%x”$s应该可以。它是POSIX标准的
for(( s=0x001; s <=0x00f; s++))
do
echo $s
done
这里的应该包含十六进制值。如何做 我认为printf“%x”$s
应该可以。它是POSIX标准的一部分,在bash
中作为内置命令实现:
$ type printf
printf is a shell builtin
…因此可以在manbash
中找到文档,至少对于bash shell是这样。我认为printf“%x”$s
应该可以。它是POSIX标准的一部分,在bash
中作为内置命令实现:
$ type printf
printf is a shell builtin
…因此可以在
manbash
中找到文档,至少对于bash shell是这样。使用printf
命令。它是标准的,工作起来或多或少像C函数
printf "%x\n" $s
使用
printf
命令。它是标准的,工作起来或多或少像C函数
printf "%x\n" $s
我不太确定是否理解更新后的问题,但是 。。。如果您需要给定的格式,可以使用类似的格式:
print "8 %x q" $s | /usr/sbin/tejas/test /dev/slot$1/tupp_fpga$devNo | grep "at offset"
如果您不熟悉printf样式的函数,请参阅描述可用函数的众多网页之一
在这种特殊情况下,格式字符串中的
%x
将替换为下一个参数的十六进制表示形式。假设s
变量保持值1010(或者0xA16或0138——实际上是相同的),那么printf
内部命令将把字符串8as
写入/usr/sbin/tejas/test
工具的标准输入中。我不太确定是否理解更新后的问题,但是
。。。如果您需要给定的格式,可以使用类似的格式:
print "8 %x q" $s | /usr/sbin/tejas/test /dev/slot$1/tupp_fpga$devNo | grep "at offset"
如果您不熟悉printf样式的函数,请参阅描述可用函数的众多网页之一
在这种特殊情况下,格式字符串中的
%x
将替换为下一个参数的十六进制表示形式。假设s
变量保持值1010(或者0xA16或0138——它们实际上是相同的),那么printf
内部命令将把字符串8as
写入/usr/sbin/tejas/test
工具的标准输入中。您可以使用管道printf
,就像使用管道传输其他任何东西一样:printf%x“15 | cat
,例如+1,但请注意,manbash
(和help printf
)仅描述bash内置对printf可执行文件功能的扩展(特别是选项-v
和格式说明符%q
)。要查看核心功能,包括支持的格式说明符的描述(如此处的%x
),请使用manprintf
。您可以像处理其他任何内容一样处理printf
:printf“%x”15 | cat
,例如+1,但请注意manbash
(和帮助printf
)仅描述bash内置的对printf可执行文件功能的扩展(特别是选项-v
和格式说明符%q
)。要查看核心功能,包括支持的格式说明符的描述(如此处的%x
),请使用man printf
。