我正在尝试将网址发送到在cgi下运行的bash脚本。我搜索了一下,发现了这个link。根据我的理解,这一行应该将变量与其值分开:
USERNAME=`echo "$QUERY_STRING" | sed -n 's/^.*username=\([^&]*\).*$/\1/p' | sed "s/%20/ /g"
所以,读到sed,我得出结论,这条线应该足以满足我的需求:
url='echo "$QUERY_STRING" | sed "s/url=\(.*\)/\1/"'
输入
URL = www.web.address.com
但是,变量get是字符串:
回显“$ QUERY_STRING”| sed“s / url =(。*)/ \ 1 /” 如果我试图删除撇号,我得到一个空变量。请注意,如果我只是向
echo
命令我想要的效果。
如何分隔网址值?
答案 0 :(得分:2)
您可以使用参数扩展,但不需要sed
。
echo "${QUERY_STRING##*=}"
将变量设置为该值:
url=${QUERY_STRING##*=}