GNU/Linux >> Linux の 問題 >  >> Linux

bashスクリプトで文字列をエンコードするURL

CentOS では、追加のパッケージは必要ありません:

python -c "import urllib;print urllib.quote(raw_input())" <<< "$message"

Python 3 およびファイルからの複数行入力に対する Rockallite の非常に役立つ回答の拡張 (今回は Ubuntu ですが、それは問題ではありません):

cat any.txt | python3 -c "import urllib.parse, sys; print(urllib.parse.quote(sys.stdin.read()))"

これにより、ファイルのすべての行が 1 つの URL に連結され、改行が %0A に置き換えられます。 .


$MESSAGE が必要です 二重引用符で囲み、シェルがそれを個別の単語に分割しないようにしてから、引数として PHP に渡します:

ENCODEDMESSAGE="$(php -r 'echo rawurlencode($argv[1]);' -- "$MESSAGE")"

Linux
  1. Bashスクリプトをデバッグする方法は?

  2. Bash スクリプト - Hello World の例

  3. 代替 --config Java bash スクリプト

  1. Bashスクリプトをファイルに接続できますか?

  2. bashスクリプトにスペースを含むベース名?

  3. 「bash -c」は何をしますか?

  1. タイプセット-aスクリプトにエラーがありますか?

  2. テンプレートを記入するためのBashスクリプト?

  3. Bashスクリプトで文字列を分割する方法