Linux: 対話型 FTP ではユーザー名/パスワードが受け入れられるが、wget では「ログインが正しくありません」

Linux: 対話型 FTP ではユーザー名/パスワードが受け入れられるが、wget では「ログインが正しくありません」

FTP サイトからデータをダウンロードしようとしているのですが、ログオンに問題があります。FTP を対話的に使用すると機能するので、ユーザー名とパスワードが正しいことはわかっています。しかし、wget を使用すると、次のエラーが発生します。

Logging in as $username...
Login incorrect.

コマンドラインから次のコマンドを試しました。

wget -r -nd -A "path/to/data/*/*hdf" --ftp-user=$username --ftp-password=$password ftp:$ftpSite

wget -r -nd -A "path/to/data/*/*hdf" --user=$username --password=$password ftp:$ftpSite

wget -r -nd -A "path/to/data/*/*hdf" --ftp-user=$username --ask-password ftp:$ftpSite

wget -r -nd -A "path/to/data/*/*hdf" --user=$username --ask-password ftp:$ftpSite

そして、いつも同じ「ログインが正しくありません」というエラーが発生します。

変数を使用せずにコマンド ラインから実行しています。この質問では、機密情報を検閲するためにのみ変数を使用しています。

FTP で mget を使用するつもりですが、ワイルドカードを使用して複数のサブディレクトリからファイルを取得することはできないと理解しています。「mget */*hdf」を試みると、「そのようなファイルまたはディレクトリはありません」というエラーが表示されます。ただし、サブディレクトリの 1 つに cd して「mget *hdf」を実行すると、データがそこにあることがわかります。

答え1

で指定されたユーザー名とパスワードの設定は のコマンド.netrcライン オプションよりも優先されるため、コマンド ラインで指定されたユーザー名は無視されます。--user=*wget

を確認してください~/.netrc

関連情報