test

test

ri

 ------------------------------------------------------------ Kernel#test
      test(int_cmd, file1 [, file2] ) => obj
 ------------------------------------------------------------------------
       Uses the integer aCmd to perform various tests on
       file1 (first table below) or on file1 and
       file2 (second table).
      
       File tests on a single file:
      
         Test   Returns   Meaning
          ?A  | Time    | Last access time for file1
          ?b  | boolean | True if file1 is a block device
          ?c  | boolean | True if file1 is a character device
          ?C  | Time    | Last change time for file1
          ?d  | boolean | True if file1 exists and is a directory
          ?e  | boolean | True if file1 exists
          ?f  | boolean | True if file1 exists and is a regular file
          ?g  | boolean | True if file1 has the \CF{setgid} bit
              |         | set (false under NT)
          ?G  | boolean | True if file1 exists and has a group
              |         | ownership equal to the caller's group
          ?k  | boolean | True if file1 exists and has the sticky bit set
          ?l  | boolean | True if file1 exists and is a symbolic link
          ?M  | Time    | Last modification time for file1
          ?o  | boolean | True if file1 exists and is owned by
              |         | the caller's effective uid
          ?O  | boolean | True if file1 exists and is owned by
              |         | the caller's real uid
          ?p  | boolean | True if file1 exists and is a fifo
          ?r  | boolean | True if file1 is readable by the effective
              |         | uid/gid of the caller
          ?R  | boolean | True if file is readable by the real
              |         | uid/gid of the caller
          ?s  | int/nil | If file1 has nonzero size, return the size,
              |         | otherwise return nil
          ?S  | boolean | True if file1 exists and is a socket
          ?u  | boolean | True if file1 has the setuid bit set
          ?w  | boolean | True if file1 exists and is writable by
              |         | the effective uid/gid
          ?W  | boolean | True if file1 exists and is writable by
              |         | the real uid/gid
          ?x  | boolean | True if file1 exists and is executable by
              |         | the effective uid/gid
          ?X  | boolean | True if file1 exists and is executable by
              |         | the real uid/gid
          ?z  | boolean | True if file1 exists and has a zero length
 
      Tests that take two files:
 
          ?-  | boolean | True if file1 and file2 are identical
          ?=  | boolean | True if the modification times of file1
              |         | and file2 are equal
          ?<  | boolean | True if the modification time of file1
              |         | is prior to that of file2
          ?>  | boolean | True if the modification time of file1
              |         | is after that of file2
 

refe

 Kernel#test
 --- test(cmd, file1 [, file2])
 
     ファイルテストを行います。cmd は以下に示す
     数値リテラルか文字列です(文字列の場合はそ
     の先頭の文字だけをコマンドとみなします)。
 
     * 1つの引数を取るもの
 
       * ?r
 
         ファイルを実効 uid で読むことができる
       * ?w
 
         ファイルに実効 uid で書くことができる
       * ?x
 
         ファイルを実効 uid で実行することができる
       * ?o
 
         ファイルの所有者が実効 uid である
       * ?G
 
         ファイルのグループ所有者が実効 gid である
       * ?R
 
         ファイルを実 uid で読むことができる
       * ?W
 
         ファイルに実 uid で書くことができる
       * ?X
 
         ファイルを実 uid で実行することができる
       * ?O
 
         ファイルの所有者が実 uid である
       * ?e
 
         ファイルが存在する
       * ?z
 
         ファイルサイズが 0 である
       * ?s
 
         ファイルサイズが 0 でない(ファイルサイズを返す)
       * ?f
 
         ファイルはプレーンファイルである
       * ?d
 
         ファイルはディレクトリである
       * ?l
 
         ファイルはシンボリックリンクである
       * ?p
 
         ファイルは名前つきパイプ(FIFO)である
       * ?S
 
         ファイルはソケットである
       * ?b
 
         ファイルはブロック特殊ファイルである
       * ?c
 
         ファイルはキャラクター特殊ファイルである
       * ?u
 
         ファイルに setuid ビットがセットされている
       * ?g
 
         ファイルに setgid ビットがセットされている
       * ?k
 
         ファイルに sticky ビットがセットされている
 
       * ?M
 
         ファイルの最終更新時刻を返す
       * ?A
 
         ファイルの最終アクセス時刻を返す
       * ?C
 
         ファイルの inode 変更時刻を返す
 
     * 2つの引数を取るもの
 
       * ?=
 
         ファイル1とファイル2の最終更新時刻が等しい
       * ?>
 
         ファイル1の方がファイル2より最終更新時刻が新しい
       * ?<
 
         ファイル1の方がファイル2より最終更新時刻が古い
       * ?-
 
         ファイル1がファイル2にハードリンクされている
 

* はてなダイアリーキーワード:test