Main Content

dir

フォルダーの内容の一覧表示

説明

dirは、現在のフォルダー内にあるファイルとフォルダーをリストします。

dirnameは、nameに一致するファイルおよびフォルダーをリストします。nameがフォルダーの場合、dirはフォルダーの内容をリストします。nameを指定するには絶対パス名または相対パス名を使用します。引数nameには、ファイル名では*ワイルドカード、パス名では***の両方のワイルドカードを含めることができます。**ワイルドカードの次の文字は、ファイル区切りでなければなりません。

listing= dir(name)nameについての属性を返します。

フォルダーの内容の表示

フォルダーの内容をリストします。

ファイルmyfile1.mmyfile2.m、およびmyfile3.mを含むフォルダーmyfolderを作成します。

mkdirmyfoldermovefilemyfile1.mmyfoldermovefilemyfile2.mmyfoldermovefilemyfile3.mmyfolder

myfolder内のファイルをリストします。

dirmyfolder
. .. myfile1.m myfile2.m myfile3.m

指定した名前と一致するファイルの検索

用語myを含み、拡張子が.mであるすべてのファイルをリストします。

ファイルmyfile1.mmyfile2.m、およびmyfile3.txtを含むフォルダーmyfolderを作成します。

mkdirmyfoldermovefilemyfile1.mmyfoldermovefilemyfile2.mmyfoldermovefilemyfile3.txtmyfolder

myfolder内の一致するファイルをリストします。

cdmyfolderdir*my*.m
myfile1.m myfile2.m

サブフォルダー内のファイルの検索

現在のフォルダー内のすべてのファイルと、現在のフォルダーのすべてのサブフォルダーをリストします。

次のファイルとフォルダーを含むフォルダーmyfolder1を作成します。

myfile1.m myfolder2 myfile2.m myfolder3 myfile3.m
mkdirmyfolder1mkdirmyfolder1/myfolder2mkdirmyfolder1/myfolder2/myfolder3movefilemyfile1.mmyfolder1movefilemyfile2.mmyfolder1/myfolder2movefilemyfile3.mmyfolder1/myfolder2/myfolder3

myfolder1内の拡張子.mをもつすべてのファイルと、myfolder1のすべてのサブフォルダーをリストします。

cdmyfolder1dir**/*.m
Files Found in Current Folder: myfile1.m Files Found in: myfolder2 myfile2.m Files Found in: myfolder2\myfolder3 myfile3.m

返された構造体の情報の検索

myfolderフォルダーの内容リストを変数MyFolderInfoに返します。

ファイルmyfile1.mmyfile2.m、およびmyfile3.mを含むフォルダーmyfolderを作成します。

mkdirmyfoldermovefilemyfile1.mmyfoldermovefilemyfile2.mmyfoldermovefilemyfile3.mmyfolder

myfolder内のファイルのリストを取得します。MATLAB は、情報を構造体配列に返します。

MyFolderInfo = dir('myfolder')
MyFolderInfo=5×1 struct array with fields:name folder date bytes isdir datenum

特定のアイテムにアクセスするには、構造体のインデックスを使用します。

MyFolderInfo(3).name
ans = 'myfile1.m'

ファイルの最終更新日の検索

ファイルが最後に変更された日時のシリアル日付値を取得します。

dirコマンドで返された構造体のdatenumフィールドを使用します。構造体のdateフィールドから数値への変換に、関数datenumは使用しないでください。関数datenumの結果はロケールによって異なります。代わりに、datenumフィールドを使用してください。

MyFileInfo = dir('myfile1.m'); FileDate = MyFileInfo.datenum
FileDate = 7.3647e+05

入力引数

すべて折りたたむ

ファイル名またはフォルダー名。文字ベクトルまたは string スカラーとして指定します。nameが string である場合は、かっこで囲みます。たとえば、dir("FolderName")のようになります。

リモートの場所のファイルおよびフォルダーをリストするには、Uniform Resource Locator (URL) として指定した絶対パスをnameに含めなければなりません。詳細については、リモート データの操作を参照してください。

複数のファイルを検索するには、ファイル名にワイルドカードを使用します。たとえば、dir *.txtは、現在のフォルダー内にある拡張子がtxtのファイルをすべてリストします。パス上のフォルダーとサブフォルダーを再帰的に検索するには、パス名にワイルドカードを使用します。たとえば、dir */*.txtは現在のフォルダーの 1 つ下のフォルダーにある、拡張子がtxtのファイルをすべてリストし、dir **/*.txtは現在のフォルダーまたはそれより下のフォルダーにある、拡張子がtxtのファイルをすべてリストします。**ワイルドカードの次の文字は、ファイル区切りでなければなりません。

メモ

MATLAB®は、*を含むファイル名をサポートしているファイル システムの場合でも、常に*をワイルドカードとして扱います。

MATLAB の関数dirは、いずれも DOS で生成される短いファイル名をサポートしているという点では、Microsoft®Windows®オペレーティング システムのdirコマンドと同じです。

出力引数

すべて折りたたむ

ファイル属性。n行 1 列の構造体配列として返されます。ここで、ndirコマンドで返されるファイルおよびフォルダーの数です。

次の表に、構造体のフィールドを示します。

フィールド名

説明

クラス

name

ファイルまたはフォルダー名

char

folder

ファイルまたはフォルダーの場所

char

date

修正日のタイムスタンプ

char

bytes

ファイルのサイズ (バイト)

double

isdir

名前がフォルダーの場合は1、名前がファイルの場合は0

logical

datenum

更新日のシリアル日付値。

double

ヒント

  • dirコマンドによって返される無効なエントリを除外するには、関数cellfunを使用します。

    MyFolderInfo = dir; MyFolderInfo = MyFolderInfo(~cellfun('isempty', {MyFolderInfo.date}));

    関数dirを出力引数を指定して実行し、存在しないファイルまたは何らかの理由で関数dirがクエリできないファイルが結果に含まれる場合に、無効なエントリが発生します。この場合、dirは次の既定値を返します。

    date: '' bytes: [] isdir: 0 datenum: []

    無効なエントリのほとんどは、dirのクエリするシンボリック リンクが、存在しないターゲットをポイントしている場合に、UNIX®プラットフォームで発生します。存在しないターゲットとは、移動、削除、あるいは名前変更が行われたターゲットです。

  • Microsoft Windows プラットフォーム上で使用できるドライブのリストを取得するには、コマンド ラインで DOS のnet useコマンドを使用します。

    dos('net use')

    または以下を入力します。

    [s,r] = dos('net use')

    MATLAB は、結果を文字配列rに返します。

拡張機能

バージョン履歴

R2006aより前に導入

すべて展開する

R2020a での動作変更