私はGoogleで私の問題の解決策を見つけることができませんでした。誰かが助言を与えることができるのだろうかと思っていました。最新でないファイルを削除するためのバッチスクリプト
私はこのように見ているファイルの完全なフォルダがありますなど、異なるデバイスのためのさまざまな種類のダウンロード複数のログファイルがある
...
device1_ip_1234asdf.txt
device1_stats_1234asdf.txt
device1_ip_1234asdf2.txt
device1_stats_1234asdf2.txt
device2_ip_1234asdf.txt
device2_stats_1234asdf.txt
device2_ip_1234asdf2.txt
device2_stats_1234asdf2.txt
を。フォルダを処理した後、次のようになりますので
は、私が唯一、各デバイス用の最新のログファイルを必要とする:ファイル名から最新のファイルを指示する方法はありません
device1_ip_1234asdf.txt
device1_stats_1234asdf.txt
device2_ip_1234asdf.txt
device2_stats_1234asdf.txt
、それがなければなりません日付変更タグから決定される。
私は基本的に行くのスクリプトを記述する必要があります。
get list of files for device1, log type ip
del device1_ip* where file is not latest
get list of files for device1, log type stats
del device1_stats* where file is not latest
repeat for device2, device3, etc
誰もが正しい方向に私を指すことができますか?私はこれをbashで簡単にやり遂げることができると確信していますが、Windowsのバッチファイルは私に困惑しています。
私はファイル名の配列を読み込む方法を見つけるのに苦労しています。
私はそれを見てきましたが、それは1つのデバイスだけで動作することを除いてほとんど解決策です。 Device1にはDevice2よりも新しいファイルが存在する可能性があるため、特定のデバイス用の古いログファイルは残しておき、最新のものは削除します。 しかし...私は可能性のある選択肢を見て、テストします。 – averagescripter