パスワードに$を使用してください

パスワードに$を使用してください

私のサーバーのパスワードが次のようになるとしましょう。Abcd$1234

シェルスクリプトでは、次を使用して別のサーバーからマイサーバーにファイルをftpしようとします。

ftp -inv (IP) << EOF
user Username Abcd$1234

"lines to ftp file"

bye

FTPは利用できません。パスワードをAbcd\$1234andに変更しようとしましたが、うまくいきませ"Abcd\$1234"んでした。

ただし、FTPなしでサーバーにログインできます(パスワードが有効であることを確認するため)。

誰でも助けることができますか?$私のパスワードを何とか使いたいです。

ベストアンサー1

ここにファイルを送信してください。 cat <<EOFその後には複数行のテキストが続き、EOFインデントなしで新しい行にテキスト文字列が続きます。 EOF間の部分は標準入力としてコマンドに渡されます。 「EOF」が「引用」されると、置換は行われません。インデントの種類については<<-を参照してください。

だから..

    ftp -inv (IP) <<'EOF'
    user Username Abcd$1234

    "lines to ftp file"

    bye
   EOF

有効でなければならず、$文字通り受け入れられます$。変数として参照しません。

おすすめ記事