如何为curl命令urlencode数据?我正在尝试编写一个用于测试的bash脚本,它接受一个参数并通过curl将其发送到网站。我需要对值进行url编码,以确保正确处理特殊字符。做这个的最好方式是什么?这是我到目前为止的基本脚本:#!/bin/bashhost=${1:?'bad host'}value=$2
shift
shift
curl -v -d "param=${value}" http://${host}/somepath $@
3 回答
撒科打诨
TA贡献1934条经验 获得超2个赞
在bash脚本的第二行使用Perl的URI::Escape
模块和uri_escape
函数:
...value="$(perl -MURI::Escape -e 'print uri_escape($ARGV[0]);' "$2")"...
编辑:修复引用问题,如Chris Johnsen在评论中所建议的那样。谢谢!
- 3 回答
- 0 关注
- 2723 浏览
添加回答
举报
0/150
提交
取消