3

cgiで実行されるbashスクリプトにWebアドレスをパスしようとしています。少し検索して、このリンクを見つけました。私が理解したことから、この行は変数をその値から分離する必要があります。

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コマンドを実行すると、目的の効果が得られることに注意してください。

URL値を分離するにはどうすればよいですか?

4

1 に答える 1

2

パラメータ展開を使用でき、必要はありませんsed

echo "${QUERY_STRING##*=}"

変数をその値に設定するには:

url=${QUERY_STRING##*=}
于 2012-07-05T17:41:49.690 に答える