FTPを使用して特定のファイルをダウンロードしますか?

FTPを使用して特定のファイルをダウンロードしますか?

FTPを使用してディレクトリにある何百ものファイルをダウンロードしようとしています。 FTPを使用して特定のファイルのみをダウンロードする方法はありますか?

理想的には、正規表現を使用して特定のファイルを一致させたいと思います。残念ながら、ディレクトリが大きすぎてディレクトリ全体をダウンロードしてから、ローカルでfindまたはgrepを使用して一部のファイルを操作することはできません。 Unixでやりたいことを簡単に行う方法はありますか?

それ以外の場合は、PerlまたはPythonでスクリプトを作成する予定です。助けてくれてありがとう。

答え1

以下を確認して、リモートシステムでシェルワイルドカードを使用できます。glob有効にした後に実行mget

バラよりhttp://www.proftpd.org/docs/howto/Globbing.htmlより多くの情報を知りたいです。

私はこれがFTPが達成できる限界だと思います。 SSHアクセス権を取得できる場合は、サーバーでgrepやファイルの変更など、より多くの作業を実行できます。

答え2

大容量ファイルストアには通常、どこかにindex.txtファイルがあります。ダウンロードすると、フォルダ内のすべてのファイルのリストが含まれます。少なくともパッケージのリストをすばやく見つけるのに便利です。

答え3

いくつかのオプションのいずれかを使用して、FTPサーバーをローカルディレクトリにマウントします。ヒューズ- ベースファイルシステムFTPの場合は、お気に入りのツール(cpプラスシェルワイルドカードなどrsync)を使用して、検索したいファイルを一致させてコピーします。たとえば、

mkdir example-somedir
curlftpfs ftp://ftp.example.com/somedir example-somedir
cd example-somedir
rsync -a --exclude 'boring.ext' --include='*.ext' --exclude='*' . /path/to/local/copy
fusermount -u example-somedir

答え4

GUIソリューションが必要でKonquerorブラウザがある場合は、ftp://FTPアドレスを入力してディレクトリ構造を参照できます。

ただし、コマンドラインソリューションが必要な場合があるようです。

関連情報