在bash中,如何转换十六进制编码的字符串,如下所示:
2e2f65202d6b2022616622
或
\x2e\x2f\x65\x20\x2d\x6b\x20\x22\x61\x66\x22
(或类似的东西):
./e -k "af"
...然后执行它?
谢谢!
答案 0 :(得分:3)
eval `printf "\x2e\x2f\x65\x20\x2d\x6b\x20\x22\x61\x66\x22"`
答案 1 :(得分:0)
我能想到的最合适的方法是通过一个功能。
例如:
exec_hex_str() {
cmd_val=$(printf "$1")
echo "Executing: $cmd_val"
eval $cmd_val
}