Mittwoch, 7. März 2012

yab - ... und wir "test"- en weiter

Nach der ganzen Erklärerei zum "test"- Befehl folgt nun, Trommelwirbel, natürlich auch die Umsetzung in "yab". Die Sub- Routinen sind dabei sehr einfach gehalten und bedürfen auch keiner großen Erklärung.

Die Sub- Routine "_IsDir()" prüft ob es sich bei der/dem angegebenen Datei/Verzeichnis um ein Verzeichnis handelt und gibt entsprechend 0 (False) oder 1 (True) zurück.

Der Aufruf der Sub- Routine kann z.B. wie folgt geschehen.

print _IsDir("/boot/home/")

export sub _IsDir(Filename$)

  // den Befehl "TEST -d" ausführen
  // (-d = Datei existiert und ist ein Verzeichnis)

  if (system("test -d " + Filename$)) then

    return false

  else

    return true

  endif

end sub


Die Sub- Routine "_IsExecutable()" prüft ob die/das angegebene Datei/Verzeichnis ausführbar ist und gibt entsprechend 0 (False) oder 1 (True) zurück.

Der Aufruf der Sub- Routine kann z.B. wie folgt geschehen.

print _IsExecutable("/boot/home/index.html")

export sub _IsExecutable(Filename$)

  // den Befehl "TEST -x" ausführen
  // (-x = Datei existiert und ist ausführbar)

  if (system("test -x " + Filename$)) then

    return false

  else

    return true

  endif

end sub


Die Sub- Routine "_IsFile()" prüft ob es sich bei der/dem angegebenen Datei/Verzeichnis um eine Datei handelt und gibt entsprechend 0 (False) oder 1 (True) zurück.

Der Aufruf der Sub- Routine kann z.B. wie folgt geschehen.

print _IsFile("/boot/home/index.html")

export sub _IsFile(Filename$)

  // den Befehl "TEST -f" ausführen
  // (-f = Datei existiert und ist eine reguläre Datei)

  if (system("test -f " + Filename$)) then

    return false

  else

    return true

  endif

end sub


(getestet mit Haiku R1 Alpha 3 und yab 1.7)

Keine Kommentare:

Kommentar veröffentlichen