Buchempfehlung
MySQL kurz & gut
MySQL kurz & gut
Das preiswerte Taschen- buch stellt MySQL-rele- vante Inhalte systematisch und knapp dar, sodass es sich optimal zum Nach- schlagen beim Pro- grammieren eignet. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Referenz - COMMAND

Referenz-Navigation

 

Syntax: COMMAND[$] [(index)]
Typ: Funktion
Kategorie: System

COMMAND enthält die Kommandozeilenparameter an das Programm.

Der optionale Parameter 'index' gibt an, dass nur der n-te Kommandozeilenparameter zurückgegeben werden soll. Wird 'index' ausgelassen oder ist kleiner als 0, so gibt FreeBASIC alle Kommandozeilenparameter zurück. Ist 'index' = 0, so gibt FreeBASIC Pfad und Dateiname des aufgerufenen Programms zurück. Ist der angegebene Index größer als die Anzahl der Parameter, so wird ein leerer String ("") zurückgegeben.

Beim Lesen der Parameter wird alles innerhalb von Anführungszeichen als ein Parameter betrachtet. So lassen sich mehrere Begriffe zusammengehörig als Parameter an ein Programm übergeben.

Das Dollarzeichen ($) als Suffix ist optional.

COMMAND sollte nicht in einem Befehlsreferenzeintragglobalen Konstruktor aufgerufen werden. Aufgrund der Art, wie FreeBASIC arbeitet, erhält man in diesem Fall immer eine leere Liste. Dies könnte sich in Zukunft ändern.

Beispiel:

'Prog1.bas
SHELL "Prog2.exe /parameter1 /parameter2"

'Prog2.bas, liegt auch als compilierte Datei Prog2.exe vor:
PRINT COMMAND
PRINT COMMAND(2)
PRINT COMMAND(0)

Ausgabe:

/parameter1 /parameter2
/parameter2
C:\BASIC\freeBASIC\Prog2.exe

Wildcards (siehe BefehlsreferenzeintragDIR) werden standardmäßig aufgefüllt. So entsteht eine vollständige Liste aller passenden Treffer, die als Parameter übergeben werden. Wenn es keine passenden Treffer gibt oder der Parameter in Anführungszeichen gesetzt wird, werden die Wildcards nicht aufgefüllt. Es gibt weitere, plattformspezifische Möglichkeiten, das Auffüllen zu unterdrücken:

Unter Windows bis fbc 0.24 fügt man folgendes an den Anfang des Codes:

Extern _CRT_glob Alias "_CRT_glob" As Long
Dim Shared _CRT_glob As Long = 0

Unter Windows ab fbc 0.90:

Extern _dowildcard Alias "_dowildcard" As Long
Dim Shared _dowildcard As Long = 0

Unter DOS kann man folgenden Code verwenden:

Public Function __crt0_glob_function Alias "__crt0_glob_function" ( ByVal arg As UByte Ptr ) As UByte Ptr Ptr
  Return 0
End Function

Unter Linux ist die Shell selbst dafür zuständig. Hier kann man das Auffüllen etwa mit dem Befehl set -f ausschalten.

Unterschiede zu QB:

Unterschiede unter den FB-Dialektformen:

Siehe auch:
BefehlsreferenzeintragSHELL, BefehlsreferenzeintragEXEC, BefehlsreferenzeintragEXEPATH, BefehlsreferenzeintragRUN, Befehlsreferenzeintrag__FB_ARGC__, Befehlsreferenzeintrag__FB_ARGV__, BefehlsreferenzeintragBetriebssystem-Anweisungen


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 07.07.2007 von RedakteurJojo angelegt.
  • Die aktuellste Version wurde am 15.02.2018 von Redakteurnemored gespeichert.
  Versionen Versionen