问题描述
这个 awk 命令可以很好地一次性解码所有字符:
awk -niord '{printf RT?$0chr("0x"substr(RT,2)):$0}' RS=%..
但我需要命令来解码和编码特定的 URL 字符。例如,我只需要解码 %3d
和 %26
,反之亦然,对文件中的 =
和 &
进行编码。
https%3a%2f%2fgoogle.com%2fsearch%3fq%3dstackoverflow%26param%3dvalue
解码所需的输出
https%3a%2f%2fgoogle.com%2fsearch%3fq=stackoverflow¶m=value
所需的编码输出
https://google.com/search?q%3dstackoverflow%26param%3dvalue
更新
虽然可以使用 sed 's/%3d/\=/g' | sed 's/%26/\&/g'
来替换字符,但我仍在寻找一种方法来一次解码或编码某些特定字符,(将它们放在一个 sed 或 awk 或其他任何东西中,而不是使用两个 sed 命令)。欢迎使用 sed 以外的工具。
我需要将 %3d
替换为 =
,将 %26
替换为 &
,反之亦然。
谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)