ドキュメンテーション

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

fileattrib

ファイルまたはフォルダーの属性の設定または取得

構文

  • fileattrib
  • fileattrib(name)
  • fileattrib(name,attribs)
  • fileattrib(name,attribs,users)
  • fileattrib(name,attribs,users,'s')
  • [status,message,messageid] = fileattrib(name,attribs,___)
  • [status,message] = fileattrib(name)

説明

fileattrib は次の構造体を使用して現在のフォルダーの属性値を取得します。ここで Name は常に、現在のフォルダー名を含む文字列です。その他のフィールドの場合、値 0 は属性がオフであることを示し、値 1 は属性がオンであることを示し、値 NaN は属性が適用されないことを示します。

Name
archive
system
hidden
directory
UserRead
UserWrite
UserExecute
GroupRead
GroupWrite
GroupExecute
OtherRead
OtherWrite
OtherExecute

fileattrib(name) は、指定されたファイルまたはフォルダーの属性値を取得します。

fileattrib(name,attribs) は、指定されたファイルまたはフォルダーに対し指定属性を設定します。

fileattrib(name,attribs,users) は、指定されたユーザーの部分集合に対しファイルまたはフォルダーを設定します。

fileattrib(name,attribs,users,'s') は、指定されたフォルダーのコンテンツの指定ユーザーに対し指定属性を設定します。

[status,message,messageid] = fileattrib(name,attribs,___) は指定されたファイル属性を設定し、次の関数ステータスを取得します。

  • status0 の場合、message はエラー メッセージであり、messageid はエラー メッセージ識別子です。

  • status1 の場合、message は指定されたファイルまたはフォルダーの属性を含む構造体であり、messageid は空の文字列です。

[status,message] = fileattrib(name) は、status と、指定されたファイルまたはフォルダーの最後の設定が "成功した" 属性構造体の値を設定し、その構造体を message に返します (status は常に 1 です)。

すべて折りたたむ

現在のフォルダー属性を表示

現在のフォルダーが C:\my_MATLAB_files だと仮定して、現在のフォルダーの属性を表示します。

fileattrib
ans = 

            Name: 'C:\my_MATLAB_files'
         archive: 0
          system: 0
          hidden: 0
       directory: 1
        UserRead: 1
       UserWrite: 1
     UserExecute: 1
       GroupRead: NaN
      GroupWrite: NaN
    GroupExecute: NaN
       OtherRead: NaN
      OtherWrite: NaN
    OtherExecute: NaN

属性は、現在のフォルダーに読み取り権限、書き込み権限、および実行権限があることを示します。

ファイル属性を表示

collatz.m の属性を表示します。

fileattrib('collatz.m')
ans = 

            Name: 'C:\my_MATLAB_files\collatz.m'
         archive: 1
          system: 0
          hidden: 0
       directory: 0
        UserRead: 1
       UserWrite: 0
     UserExecute: 1
       GroupRead: NaN
      GroupWrite: NaN
    GroupExecute: NaN
       OtherRead: NaN
      OtherWrite: NaN
    OtherExecute: NaN

属性は、指定したアイテムがファイルであることを示します。ファイルを読み取ったり実行したりできますが、更新はできません。ファイルはアーカイブされています。

Windows システムでのフォルダー属性の表示

フォルダー C:\my_MATLAB_files\doc の属性を表示します。

fileattrib('C:\my_MATLAB_files\doc')
ans = 

            Name: 'C:\my_MATLAB_files\doc'
         archive: 0
          system: 0
          hidden: 0
       directory: 1
        UserRead: 1
       UserWrite: 1
     UserExecute: 1
       GroupRead: NaN
      GroupWrite: NaN
    GroupExecute: NaN
       OtherRead: NaN
      OtherWrite: NaN
    OtherExecute: NaN

属性は、指定したフォルダーに読み取り権限、書き込み権限、および実行権限があることを示します。

UNIX システムでのフォルダー属性の表示

UNIX® システム上にあるフォルダー /public の属性を表示します。

fileattrib('/public')
ans = 

            Name: '/public'
         archive: NaN
          system: NaN
          hidden: NaN
       directory: 1
        UserRead: 1
       UserWrite: 1
     UserExecute: 1
       GroupRead: 1
      GroupWrite: 0
    GroupExecute: 1
       OtherRead: 1
      OtherWrite: 0
    OtherExecute: 1

属性は、指定したフォルダーに読み取り権限、書き込み権限、および実行権限があることを示します。さらに、UNIX グループ内のユーザーおよびその他すべてのユーザーは、指定されたフォルダーの読み取り権限と実行権限をもっているが、書き込み権限はもっていません。

ファイル属性を設定

myfile.m を書き込み可能にします。

fileattrib('myfile.m','+w')

UNIX 上の特定のユーザーに対しファイル属性を設定

フォルダー /home/work/results を UNIX プラットフォーム上の "すべてのユーザー" に対して読み取り専用にします。

fileattrib('/home/work/results','-w','a')

書き込み属性 w の前にマイナス (-) を付けると、書き込みに関するステータスが削除されます。

フォルダーとそのコンテンツに対する属性の設定

Windows® プラットフォーム上で、フォルダー D:\work\results とそのすべてのコンテンツを読み取り専用および非表示にします。

fileattrib('D:\work\results','+h -w','','s')

users 引数の値は Windows システムでは適用できないので、この引数は空の文字列となります。s 引数は、フォルダーのコンテンツに対して非表示および読み取り専用の属性を適用します。

フォルダーの属性構造体の取得

フォルダー results の属性を取得し、属性を構造体に返します。

[stat,struc] = fileattrib('results')
stat =
     1

struc = 
            Name: 'D:\work\results'
         archive: 0
          system: 0
          hidden: 0
       directory: 1
        UserRead: 1
       UserWrite: 1
     UserExecute: 1
       GroupRead: NaN
      GroupWrite: NaN
    GroupExecute: NaN
       OtherRead: NaN
      OtherWrite: NaN
    OtherExecute: NaN

操作が問題なく終了したことが、ステータス stat に値 1 として示されています。構造体 struc にはファイル属性が含まれます。

構造体の名前属性値にアクセスします。MATLAB®results のパスを返します。

struc.Name
ans =
D:\work\results

複数ファイルの属性構造体の取得

現在のフォルダー内で名前が new で始まるすべてのファイルに対する属性を取得します。

[stat,struc] = fileattrib('new*')
stat =
     1

mess = 
1x3 struct array with fields:
    Name
    archive
    system
    hidden
    directory
    UserRead
    UserWrite
    UserExecute
    GroupRead
    GroupWrite
    GroupExecute
    OtherRead
    OtherWrite
    OtherExecute

結果には、一致したファイルが 3 つあることが示されています。

ファイル名を表示します。

struc.Name
ans =
D:\work\results\newname.m

ans =
D:\work\results\newone.m

ans =
D:\work\results\newtest.m

2 番目のファイル名を表示します。

struct(2).Name
ans =
D:\work\results\newname.m

ファイルの属性の正常な設定とメッセージの取得

ファイル属性の設定が成功したときの結果の出力を表示します。

[status,message,messageid] = fileattrib('C:/my_MATLAB_files\doc',...
'+h -w','','s')
status =

     1


message =

     ''



messageid =

     ''

1status 値は設定操作が成功したことを示します。したがって、エラー message または messageid は返されません。

失敗したファイルの属性の設定とメッセージの取得

ファイル属性の設定が不成功だったときの結果の出力を表示します。

[status,message,messageid] = fileattrib('C:/my_MATLAB_files\doc',...
'+h w-','','s')
status =

     0


message =

Illegal file mode characters on the current platform.


messageid =

MATLAB:FILEATTRIB:ModeSyntaxError

0status 値は設定操作が不成功だったことを示します。マイナス記号が、w の前ではなくて、後に間違って表示されます。

入力引数

すべて折りたたむ

name — ファイルまたはフォルダー名文字列

文字列で指定される、フォルダーまたはファイルの絶対パスまたは相対パス。特定の文字で始めるすべての名前を指定するには、ワイルドカード文字 * を追加します。

例: fileattrib('myfile.m')

attribs — ファイルまたはフォルダーの属性値'a' | 'h' | 's' | 'w' | 'x'

ファイルまたはフォルダーの属性値 (空白によって区切られた文字列として指定)。この属性を設定するには属性の前にプラス (+) 修飾子を付け、クリアするには属性の前にマイナス (-) 修飾子を付けます。

attribvalue

説明

'a'

アーカイブ (Microsoft® Windows プラットフォームのみ)。

'h'

隠しファイル (Windows プラットフォームのみ)。

's'

システム ファイル (Windows プラットフォームのみ)。

'w'

書き込み権限 (Windows および UNIX プラットフォーム)。結果は、プラットフォームおよびアプリケーションごとに異なります。たとえば、関数 fileattrib によってあるフォルダーの書き込み権限が無効で、読み取り専用になっている場合でも、プラットフォームやアプリケーションによっては、このフォルダー内のファイルへの書き込みができる場合もあります。

'x'

実行ファイル (UNIX プラットフォームのみ)。

例: fileattrib('myfile.m', '+w -h')

users — ユーザーのサブセット。'a' | 'g' | 'o' | 'u' | ''

ユーザーのサブセット (UNIX プラットフォームのみ)、文字列として指定。UNIX 以外のすべてのプラットフォームでは、users 引数を空文字列 '' として指定します。この値は fileattrib の get 操作によって返されません。

UNIX users の値

説明

'a'

UNIX プラットフォーム上にいるすべてのユーザー

'g'

ユーザー グループ

'o'

他のすべてのユーザー

'u'

現在のユーザー

例: fileattrib('D:/work/results','-w','a')

出力引数

すべて折りたたむ

status — 属性の設定が成功したかどうかの提示0 | 1

属性を設定できなかった場合、status0 です。失敗した場合は、status1 になります。

message — 属性構造体またはエラー メッセージ文字列 | 構造体配列

属性構造体またはエラー メッセージ。属性を設定しているか取得しているか、および status によります。

属性の取得または設定ステータスメッセージ内容
設定0エラー メッセージ
設定1空の文字列
取得1ファイルの属性と値が格納されている構造体

ファイル属性を取得しているときは、構造体はこれらのフィールドと取りうる値を含みます。

フィールド名取りうる値
Nameファイル名またはフォルダー名が格納されている文字列
archive0 (設定なし)、1 (set)、または NaN (not applicable)
system01、または NaN
hidden01、または NaN
directory01、または NaN
UserRead01、または NaN
UserWrite01、または NaN
UserExecute01、または NaN
GroupRead01、または NaN
GroupWrite01、または NaN
GroupExecute01、または NaN
OtherRead01、または NaN
OtherWrite01、または NaN
OtherExecute01、または NaN

messageid — エラー メッセージ識別子文字列

属性を設定できなかった (status が 0) 場合のエラー メッセージ識別子。文字列として返されます。status が 1 の場合、messageid は空の文字列となります。

詳細

すべて折りたたむ

ヒント

  • fileattrib は、DOS の attrib コマンドまたは UNIX の chmod コマンドに似ています。 [1]

参考

| | | | | | |


[1] UNIX is a registered trademark of The Open Group in the United States and other countries.

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