■構文
DIR [ドライブ:][パス][ファイル名] [/A[[:]属性]] [/B] [/C] [/D] [/L] [/N]
[/O[[:]ソート順]] [/P] [/Q] [/S] [/T[[:]タイムフィールド]] [/W] [/X] [/4]
■説明
ディレクトリ中のファイルとサブディレクトリを一覧表示します。
■サンプルコード
以下のフォルダ状態の物を使ってDIRコマンドのテストをしてみます。
・オプションなし(カレントディレクトリの情報を取得)
・名前だけ取得したい。
・更新日時の古い順で、名前だけ取得したい。
・更新日時の新しい順で、名前だけ取得したい。
・作成日時の古い順で、名前だけ取得したい。
・作成日時の新しい順で、名前だけ取得したい。
・フォルダのうち、作成日時の古い順で、名前だけ取得したい。
・ファイルのうち、作成日時の古い順で、名前だけ取得したい。
・ファイルのうち、作成日時の古い順で、名前だけ取得して、Cドライブ直下にoutput.txtとして出力したい
・C:\Sampleフォルダ内、作成日時の古い順で、サブフォルダも含め表示
DIR [ドライブ:][パス][ファイル名] [/A[[:]属性]] [/B] [/C] [/D] [/L] [/N]
[/O[[:]ソート順]] [/P] [/Q] [/S] [/T[[:]タイムフィールド]] [/W] [/X] [/4]
■説明
ディレクトリ中のファイルとサブディレクトリを一覧表示します。
[ドライブ:][パス][ファイル名] | 一覧表示するドライブ、ディレクトリ、またはファイルを指定します。 |
/A | 指定された属性のファイルを表示します。 |
:属性 | D ディレクトリ |
R 読み取り専用 | |
H 隠しファイル | |
A アーカイブ | |
S システム ファイル | |
- その属性以外 | |
/B | ファイル名のみを表示します (見出しや要約が付きません)。 |
/C | ファイル サイズを桁区切り表示します。これは既定の設定です。/-C とすると桁区切り表示されません。 |
/D | /W と同じですが、ファイルを列で並べ替えた一覧を表示します。 |
/L | 小文字で表示します。 |
/N | ファイル名を右端に表示する一覧形式を使用します。 |
/O | ファイルを並べ替えて表示します。 |
:ソート順 | N 名前順 (アルファベット) |
S サイズ順 (小さいほうから) | |
E 拡張子順 (アルファベット) | |
D 日時順 (古いほうから) | |
G グループ (ディレクトリから) | |
- 降順 | |
/P | 1 画面ごとに停止して表示します。 |
/Q | ファイルの所有者を表示します。 |
/S | 指定されたディレクトリおよびそのサブディレクトリのすべてのファイルを表示します。 |
/T | どのタイムフィールドを表示するか、または並べ替えに使用するかを指定します。 |
:タイムフィールド | C 作成 |
A 最終アクセス | |
W 最終更新 | |
/W | ワイド一覧形式で表示します。 |
/X | このオプションは MS-DOS 形式以外のファイル名に対する短い名前を表示します。長い名前の前に短い名前を表示する点を除けば、/N オプションと同じです。短い名前がない場合は、ブランクになります。 |
/4 | 4 つの数字で年を表示します。 |
■サンプルコード
以下のフォルダ状態の物を使ってDIRコマンドのテストをしてみます。
・オプションなし(カレントディレクトリの情報を取得)
- C:\test>dir
- ドライブ C のボリューム ラベルがありません。
- ボリューム シリアル番号は 40A6-A3FB です
- C:\test のディレクトリ
- 2012/01/04 09:14 <dir> .
- 2012/01/04 09:14 <dir> ..
- 2012/01/04 09:20 0 ファイル01.txt
- 2012/01/04 09:19 1 ファイル02.txt
- 2012/01/04 09:18 810 ファイル03.txt
- 2012/01/04 09:17 0 ファイル04.txt
- 2012/01/04 09:16 0 ファイル05.txt
- 2012/01/04 09:20 <dir> フォルダ01
- 2012/01/04 09:19 <dir> フォルダ02
- 2012/01/04 09:18 <dir> フォルダ03
- 2012/01/04 09:17 <dir> フォルダ04
- 2012/01/04 09:16 <dir> フォルダ05
- 5 個のファイル 811 バイト
- 7 個のディレクトリ 200,254,664,704 バイトの空き領域
- </dir></dir></dir></dir></dir></dir></dir>
・名前だけ取得したい。
- C:\test>dir /B
- ファイル01.txt
- ファイル02.txt
- ファイル03.txt
- ファイル04.txt
- ファイル05.txt
- フォルダ01
- フォルダ02
- フォルダ03
- フォルダ04
- フォルダ05
・更新日時の古い順で、名前だけ取得したい。
- C:\test>dir /B /O:D
- ファイル05.txt
- フォルダ05
- ファイル04.txt
- フォルダ04
- フォルダ03
- ファイル03.txt
- フォルダ02
- ファイル02.txt
- ファイル01.txt
- フォルダ01
・更新日時の新しい順で、名前だけ取得したい。
- C:\test>dir /B /O:-D
- フォルダ01
- ファイル01.txt
- ファイル02.txt
- フォルダ02
- ファイル03.txt
- フォルダ03
- フォルダ04
- ファイル04.txt
- フォルダ05
- ファイル05.txt
・作成日時の古い順で、名前だけ取得したい。
- C:\test>dir /B /O:D /T:C
- フォルダ01
- ファイル01.txt
- フォルダ02
- ファイル02.txt
- フォルダ03
- ファイル03.txt
- フォルダ04
- ファイル04.txt
- フォルダ05
- ファイル05.txt
・作成日時の新しい順で、名前だけ取得したい。
- C:\test>dir /B /O:-D /T:C
- ファイル05.txt
- フォルダ05
- ファイル04.txt
- フォルダ04
- ファイル03.txt
- フォルダ03
- ファイル02.txt
- フォルダ02
- ファイル01.txt
- フォルダ01
・フォルダのうち、作成日時の古い順で、名前だけ取得したい。
- C:\test>dir /B /O:D /T:C /A:D
- フォルダ01
- フォルダ02
- フォルダ03
- フォルダ04
- フォルダ05
・ファイルのうち、作成日時の古い順で、名前だけ取得したい。
- C:\test>dir /B /O:D /T:C /A:A
- ファイル01.txt
- ファイル02.txt
- ファイル03.txt
- ファイル04.txt
- ファイル05.txt
・ファイルのうち、作成日時の古い順で、名前だけ取得して、Cドライブ直下にoutput.txtとして出力したい
- C:\test>dir /B /O:D /T:C /A:A >C:\output.txt
・C:\Sampleフォルダ内、作成日時の古い順で、サブフォルダも含め表示
- C:\test>dir C:\Sample /B /O:D /T:C /S
- C:\Sample\1
- C:\Sample\1\21
- C:\Sample\1\22
- C:\Sample\1\21\3
- C:\Sample\1\21\tes1.txt
- C:\Sample\1\21\3\4
- C:\Sample\1\22\3
0 件のコメント:
コメントを投稿