このようなパスワードをエクスポートする必要があります
export PASSWORD='vfR"&aDA'GzV3(Yg'
しかし、バックスラッシュで3つの組み合わせを下にすると、上記は機能しません。
export PASSWORD='vfR"&aDA\'GzV3(Yg'
export PASSWORD='vfR\"&aDA\'GzV3(Yg'
export PASSWORD='vfR\"&aDA\'GzV3\(Yg'
回答 2 件
一重引用符では、エスケープは機能しません。それらは単なるバックスラッシュ文字です。ののみ シングルクォートの後に特別な意味を持つものは別のシングルクォートであり、常にシングルクォートされたセクションの終わりを示します。結果として、単一引用符を単一引用符で囲まれた文字列に埋め込むことはできません。
いくつかのオプションがあります。シングルクォートを終了できますセクション 文字列の別の何かを使用して、単一引用符を保護します。
# Single-quoted string, escaped single-quote, then another single-quoted string: export PASSWORD='vfR"&aDA'\''GzV3(Yg' # Single-quoted string, double-quoted single-quote, then another single-quoted string: export PASSWORD='vfR"&aDA'"'"'GzV3(Yg'
または、代わりに二重引用符で囲まれた文字列を使用します(その後、文字列で必要な二重引用符、バックスラッシュ、ドル記号、バッククォートなどをエスケープします)。
export PASSWORD="vfR\"&aDA'GzV3(Yg"
または、引用符を完全にスキップして、すべてを個別にエスケープすることもできます。
export PASSWORD=vfR\"\&aDA\'GzV3\(Yg
関連した質問
- sh-50 $のbash関数とスコープ
- 倍数を比較するための最良の方法varsshell linux
- sed +角括弧内の文字列をキーに置き換えます
- 引数を受け入れてバックグラウンドで実行するbashシェルスクリプトを実行する
- ターミナルが何かに追加したり、stdinを取得したりしていると解釈しようとせずに、スクリプトに「>>」または「<<」を渡すにはどうすればよいですか?
- スクリプトで「LANG = CLC_ALL = C」を設定しても、printfの英語以外の文字のパディング長には影響しません。
- /にフォルダを作成するのは良い習慣ですか?
- bash +両方の異なるホスト名の正規表現に一致
- Linuxでディレクトリとして作業していたディレクトリを開くことができなくなったのはなぜですか?
- Bashスクリプト:コマンドの結果を取得して使用する方法
export PASSWORD="vfR\"&aDA'GzV3(Yg"
を試す 一重引用符は、エスケープスラッシュが期待どおりに動作するのを妨げていると思います。したがって、二重引用符を試してください。ここで、単一引用符と二重引用符の質問に対する回答を表示できます。