OPEN PIPE

FreeBASIC-Referenz » Alphabetische Befehlsreferenz » O » OPEN PIPE

Syntax: OPEN PIPE "Shellbefehl" FOR Dateimodus [ACCESS Zugriffsart] AS [#]Dateinummer
Typ: Anweisung
Kategorie: Datei

PIPE ist ein Gerät, auf das man mit INPUT # zugreifen kann. In PIPE wird die Ausgabe eines SHELL-Befehls gespeichert. Die Ausgabe dieses Befehls wird aber nicht auf den Bildschirm geleitet, sondern in einen Dateipuffer umgeleitet, auf den mit INPUT # und LINE INPUT # zugegriffen werden kann.

Beispiel:

#IFDEF __FB_UNIX__
  CONST TEST_COMMAND = "ls *"
#ELSE
  CONST TEST_COMMAND = "dir *.*"
#ENDIF

DIM AS INTEGER nr = FREEFILE
DIM s AS STRING

OPEN PIPE TEST_COMMAND FOR INPUT AS #nr

DO UNTIL EOF(nr)
   LINE INPUT #nr, s
   PRINT s
LOOP
CLOSE #nr
SLEEP

Ein umfangreicheres Beispiel zu OPEN PIPE findet sich in der Code-Beispiel-Rubrik des FreeBASIC-Portals.

FreeBASIC unterstützt keine bidirektionalen Pipes. Diese müssen über die API-Funktionen des Betriebssystems initialisiert werden.

Unterschiede zu QB: neu in FreeBASIC

Plattformbedingte Unterschiede:
Der Dateimodus BINARY wird nicht von allen Plattformen unterstützt.

Unterschiede zu früheren Versionen von FreeBASIC:

Siehe auch:
OPEN (Anweisung), CLOSE, INPUT #, LINE INPUT #, EOF, SHELL