Programmierung in Ruby

Der Leitfaden der Pragmatischen Programmierer

module FileTest

Index:

blockdev? chardev? directory? executable? executable_real? exist? exists? file? grpowned? owned? pipe? readable? readable_real? setgid? setuid? size size? socket? sticky? symlink? writable? writable_real? zero?


FileTest implementiert Test-Operationen für Dateien ähnlich denen in File::Stat.

instance methods
blockdev? FileTest.blockdev?( aString ) -> true or false

Liefert true, falls die genannte Datei ein Block-Device ist, false, falls nicht oder falls das Betriebssystem diese Eigenschaft nicht unterstützt.

FileTest.blockdev?( "testfile" ) » false

chardev? FileTest.chardev?( aString ) -> true or false

Liefert true, falls die genannte Datei ein Charakter-Device ist, false, falls nicht oder falls das Betriebssystem diese Eigenschaft nicht unterstützt.

FileTest.chardev?( "/dev/tty" ) » true

directory? FileTest.directory?( aString ) -> true or false

Liefert true, falls die genannte Datei ein Verzeichnis ist, sonst false.

FileTest.directory?( "." ) » true

executable? FileTest.executable?( aString ) -> true or false

Liefer true, falls die genannte Datei ausführbar ist. Dieser Test benutzt dabei den effektiven Besitzer des Prozesses.

FileTest.executable?( "testfile" ) » false

executable_real? FileTest.executable_real?( aString ) -> true or false

Dasselbe wie FileTest#executable?, aber der Test benutzt dabei den realen Besitzer des Prozesses.

exist? FileTest.exist? ( aString ) -> true or false

Liefert true, falls die genannte Datei existiert.

FileTest.exist?( "testfile" ) » true

exists? FileTest.exists? ( aString ) -> true or false

Synonym für FileTest::exist?.

file? FileTest.file?( aString ) -> true or false

Liefert true, falls die genannte Datei eine reguläre Datei (kein Device, Pipe, Socket usw.) ist.

FileTest.file?( "testfile" ) » true

grpowned? FileTest.grpowned?( aString ) -> true or false

Liefert true, falls die effektive Group-Id des Prozesses die selbe ist wie die der genannten Datei. Bei Windows NT immer false.

FileTest.grpowned?( "/etc/passwd" ) » false

owned? FileTest.owned?( aString ) -> true or false

Liefert true, falls die effektive Benutzer-Id des Prozesses die selbe ist wie die des Besitzers der genannten Datei.

FileTest.owned?( "/etc/passwd" ) » false

pipe? FileTest.pipe?( aString ) -> true or false

Liefert true, falls das Betriebssystem Pipes unterstützt und die genannte Datei ein Pipe ist, ansonsten false.

FileTest.pipe?( "testfile" ) » false

readable? FileTest.readable?( aString ) -> true or false

Liefert true, falls die genannte Datei mit der effektiven Benutzer-Id dieses Prozesses lesbar ist.

FileTest.readable?( "testfile" ) » true

readable_real? FileTest.readable_real?( aString ) -> true or false

Liefert true, falls die angegebene Datei mit der realen Benutzer-Id dieses Prozesses lesbar ist.

FileTest.readable_real?( "testfile" ) » true

setgid? FileTest.setgid?( aString ) -> true or false

Liefert true, falls das Set-Group-Id-Bit der genannten Datei gesetzt ist, und false, falls nicht oder falls das Betriebssystem diese Eigenschaft nicht unterstützt.

FileTest.setgid?( "/usr/sbin/lpc" ) » true

setuid? FileTest.setuid?( aString ) -> true or false

Liefert true, falls das Set-User-Id-Bit der genannten Datei gesetzt ist, und false, falls nicht oder falls das Betriebssystem diese Eigenschaft nicht unterstützt.

FileTest.setuid?( "/bin/su" ) » true

size FileTest.size( aString ) -> anInteger

Liefert die Größe der genannten Datei in Bytes.

FileTest.size( "testfile" ) » 66

size? FileTest.size?( aString ) -> aFixnum or nil

Liefert nil, falls die genannte Datei von der Länge Null ist, ansonsten ein aFixnum ungleich Null.

FileTest.size?( "testfile" ) » 66
FileTest.size?( "/dev/zero" ) » nil

socket? FileTest.socket?( aString ) -> true or false

Liefert true, falls die genannte Datei ein Socket ist, false, falls nicht oder falls das Betriebssystem diese Eigenschaft nicht unterstützt.

sticky? FileTest.sticky?( aString ) -> true or false

Liefert true, falls das Sticky-Bit der genannten Datei gesetzt ist, und false, falls nicht oder falls das Betriebssystem diese Eigenschaft nicht unterstützt.

symlink? FileTest.symlink?( aString ) -> true or false

Liefert true, falls die genannte Datei ein symbolischer Link ist, und false, falls nicht oder falls das Betriebssystem diese Eigenschaft nicht unterstützt.

writable? FileTest.writable?( aString ) -> true or false

Liefert true, falls die genannte Datei mit der effektiven Benutzer-Id dieses Prozesses beschreibbar ist.

writable_real? FileTest.writable_real?( aString ) -> true or false

Liefert true, falls die genannte Datei mit der realen Benutzer-Id dieses Prozesses beschreibbar ist.

zero? FileTest.zero?( aString ) -> true or false

Liefert true, falls die genannte Datei von der Länge Null ist, ansonsten false.


Extracted from the book "Programming Ruby - The Pragmatic Programmer's Guide"
Übersetzung: Jürgen Katins
Für das englische Original:
© 2000 Addison Wesley Longman, Inc. Released under the terms of the Open Publication License V1.0. That reference is available for download.
Diese Lizenz sowie das Original vom Herbst 2001 bilden die Grundlage der Übersetzung
Es wird darauf hingewiesen, dass sich die Lizenz des englischen Originals inzwischen geändert hat.
Für die deutsche Übersetzung:
© 2002 Jürgen Katins
Der Copyright-Eigner stellt folgende Lizenzen zur Verfügung:
Nicht-freie Lizenz:
This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder. Distribution of the work or derivative of the work in any standard (paper) book form is prohibited unless prior permission is obtained from the copyright holder.
Freie Lizenz:
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".