書斎仮想化

プログラムと自転車の履歴

windowsBatでファイル名を取得するコピペ(下位層のフォルダ全てを対象にしたファイル名の取得)

はじめに

windows10にて動作確認済

ポイント

dirコマンドを使用します。パスの指定を「*」とし、実行ファイルが存在するディレクトリを含む、直下の全てのディレクトリを対象とします。

オプション 効果 備考
/b ファイル名のみを表示します  
/a- 指定した属性のファイル「以外」を表示します 「-」を付けると右辺が否定対象になります
/d /aの属性です。ディレクトリを表します  
/s /aの属性です。システムファイルを表します  

使用状況としては以下の通りになります。

  1. /bでファイル名のみを表示します(バイト数や余計な補足情報を表示しないようにします)
  2. /a-/d/sでディレクトリを表示しないようにします。また、システムファイルを表示しないようにします。

コピペ内容

dir * /b/a-/d/s > filelist.txt

出力例

list.txtと言うファイル名で、実行したパス直下に出力されます。

C:\Users\User\Desktop\aaa.txt
C:\Users\User\Desktop\bbb.xlsx
C:\Users\User\Desktop\ccc.lnk
C:\Users\User\Desktop\AAA\aaa.txt
C:\Users\User\Desktop\BBB\ZZZ\bbb.xlsx
C:\Users\User\Desktop\CCC\YYY\XXX\ccc.lnk