再帰的にディレクトリ内を検索する
FileSystemMapは,通常指定のディレクトリ内のファイルすべてを評価する.
完全なWolfram言語入力を表示する
In[2]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_53.png)
Length[Keys[FileSystemMap[FileByteCount, dir]]]
Out[2]=
![](assets.ja/recursively-search-through-directories/O_44.png)
FileNameFormsを使うと,FileSystemMapの特定パターンでファイルを選ぶことができる.
In[3]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_54.png)
FileSystemMap[FileByteCount, dir, FileNameForms -> "*en*"]
Out[3]=
![](assets.ja/recursively-search-through-directories/O_45.png)
In[4]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_55.png)
FileSystemMap[FileByteCount, dir, FileNameForms -> "*en*"];
Length[Keys[%]]
Out[4]=
![](assets.ja/recursively-search-through-directories/O_46.png)
FileSystemScanをFileNameFormsと一緒に使って,タイトルに「Date」が含まれるドキュメントページすべてを新しいディレクトリにコピーする.
完全なWolfram言語入力を表示する
In[7]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_58.png)
FileNames["*", targetDir]
Out[7]=
![](assets.ja/recursively-search-through-directories/O_47.png)
In[8]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_59.png)
FileSystemScan[copy, docsDir, Infinity, FileNameForms -> "*Date*.nb"]
In[9]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_60.png)
FileNames["*", targetDir]
Out[9]=
![](assets.ja/recursively-search-through-directories/O_48.png)
これらのファイルは,FileSystemScanを使って削除することができる.
In[10]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_61.png)
FileSystemScan[DeleteFile, targetDir]
In[11]:=
![Click for copyable input](assets.ja/recursively-search-through-directories/In_62.png)
FileNames["*", targetDir]
Out[11]=
![](assets.ja/recursively-search-through-directories/O_49.png)