[英]How to use hex escapes in bash eval string?
我正在尝试在包含十六进制转义序列(例如\\x20
的字符串中执行命令。
例如,如果字符串是ls\\x20/usr/bin/
,那么我想运行命令ls /usr/bin/
。
我怎样才能做到这一点?
那么可读的方式包含 3 行:
CMD="ls\x20/usr/bin/"
OUTPUT="$(echo -e $CMD)"
eval "${OUTPUT}"
echo -e
将转换字符串,转换后的字符串将存储在 OUTPUT 中。 然后只需使用 eval :)
希望它会帮助你
在一行中(正如你所说):
$(echo -e "ls\x20/usr/bin/")
注意:这种方式是一行,但它并不适用于所有情况。例如,它不适用于别名。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.