我正在尝试优化我的代码,并借用了一段特定的代码.我想删除sed所以我没有在主循环中使用任何外部进程.
function sendMsg () {
value=$(echo $1 | sed 's/ /%20/g;s/!/%21/g;s/"/%22/g;s/#/%23/g;s/\&/%26/g;s/'\''/%28/g;s/(/%28/g;s/)/%29/g;s/:/%3A/g;s/\//%2F/g');
str="http://www.xxxx.com/api.ashx?v=1&k=$Key&a=send&w=$value";
curl -s $str;
}
Run Code Online (Sandbox Code Playgroud)
为了清楚起见,我编辑了这个.$ value只是通过函数末尾的curl命令转换为适当的url输出.
虽然这很好用,但我最感兴趣的是尽可能快地处理它,如果可以的话,不要求外部进程.
感谢您的评论到目前为止!
我到目前为止是这样的:
function sendMsg () {
str="http://www.xxxx.com/api.ashx?v=1&k=$Key&a=send&w=";
curl -s $str --data-urlencode "$1";
}
Run Code Online (Sandbox Code Playgroud)
我至少在正确的轨道上吗?