一致するファイル名を使用してファイルをフォルダに移動する

一致するファイル名を使用してファイルをフォルダに移動する

doc、docx、PDF ファイルがあり、ファイル名は固有の 9 桁の数字とそれに続くテキストで構成されています。

これらのファイルを、少なくとも 9 桁の一意の番号で構成され、テキストが異なる可能性のあるそれぞれのフォルダーに移動したいと考えています。

これらのフォルダはハード ドライブ上の別のフォルダにありますが、必要に応じてドキュメントを同じ親フォルダに簡単に移動できます。ファイル名とフォルダ名は、123456789_Firstname_Lastname.docx の組み合わせです。アンダースコアの代わりに、スペースやカンマが使用されている場合や、スペースがまったく使用されていない場合があります。ただし、ファイル名とフォルダ名が 9 桁の数字で始まることは確かです。

Python、Hazel、Directory Opus をインストールしており、このプロセスを実行するために必要な場合は他のものもインストールできます。ファイルが何千もあるので、解決策があれば本当にありがたいです。

答え1

スクリプト作成サービスではありませんが、この (テストされていない) PowerShell を使用すると開始できるはずです。

$DestParent = 'C:\NumberedFolders'
Get-ChildItem *.txt, *.pdf | %{
   $ID = $_.BaseName.Substring(0,8)
   $Dest = (Get-Item "$destparent\$ID*").FullName
   Move-Item -Path $_.FullName -Destination $Dest
}

取得-子アイテム

ForEachオブジェクト

String.Substring メソッド

アイテムの取得

アイテムの移動

関連情報