ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

dir

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

構文

dir
dir name
listing = dir(name)

説明

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

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

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

すべて折りたたむ

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

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

mkdir myfolder
movefile myfile1.m myfolder
movefile myfile2.m myfolder
movefile myfile3.m myfolder

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

dir myfolder
.          ..         myfile1.m  myfile2.m  myfile3.m  

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

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

mkdir myfolder
movefile myfile1.m myfolder
movefile myfile2.m myfolder
movefile myfile3.txt myfolder

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

cd myfolder
dir *my*.m
myfile1.m  myfile2.m  

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

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

myfile1.m
myfolder2
     myfile2.m
     myfolder3.m
         myfile3.m
mkdir myfolder1
mkdir myfolder1/myfolder2
mkdir myfolder1/myfolder2/myfolder3

movefile myfile1.m myfolder1
movefile myfile2.m myfolder1/myfolder2
movefile myfile3.m myfolder1/myfolder2/myfolder3

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

cd myfolder1
dir **/*.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 を作成します。

mkdir myfolder
movefile myfile1.m myfolder
movefile myfile2.m myfolder
movefile myfile3.m myfolder

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

入力引数

すべて折りたたむ

ファイル名またはフォルダー名。文字ベクトルとして指定します。複数のファイルを検索するには、ファイル名にワイルドカードを使用します。たとえば、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 より前に導入

この情報は役に立ちましたか?