私は初めてsftpに触れましたが、これが私が達成したいものです。
リモートフォルダにはmain
3つのサブディレクトリがあります。sub1
、、sub2
sub3
。私のローカルコンピュータにはmain
3つのサブディレクトリがあるフォルダがあります。この3つのサブディレクトリを繰り返しながら、新しく作成されたファイルを見つけて、そのローカルサブディレクトリに配置しようとしています。
同じコマンドを3回(各ディレクトリに対して1回)呼び出すだけで、ループを作成する方法がなくても問題はありません。
新しいファイルだけをインポートしたいと言えば、理想的にはリモートディレクトリにあるファイルの作成/変更日をそのローカルファイルと比較したいと思います。たとえばfile1.csv
、リモートコンピュータにある新しいファイルの場合は、sub1
そのファイルがローカルコンピュータにあることを確認したいと思いますfile1.csv
。sub1
その場合は、日付を比較し、リモート日付が最新の場合は、自分のローカルフォルダに送信してください。ファイルが存在しない場合は、ローカルフォルダに直接転送されます。
これが不可能な場合は、「今日」生成されたファイルのみをローカルフォルダのシステムに送信するオプションがあります。
これを達成するための最良の方法は何ですか?
ご協力ありがとうございます!
ベストアンサー1
私が正しく理解したら、リモートディレクトリからローカルディレクトリに新しいファイルまたは変更されたファイルをインポートする必要があります。
SFTPを使用したいのか、特別な理由があるのかわからないのですか?
選択肢が開いている場合は、rsyncを考えてみましたか?
rsyncに関する多数のオンラインチュートリアルとドキュメントがあります。