wordexp(5) wordexp(5)
NAME
wordexp - Typen für die Wort-Expansion
SYNTAX
#include <wordexp.h>
BESCHREIBUNG
Die Include-Datei wordexp.h definiert die Strukturen und symbolischen
Konstanten, die von den Funktionen wordexp() und wordfree() verwendet
werden.
Der Strukturtyp wordexpt enthält mindestens die folgenden Komponen-
ten:
sizet wewordc Anzahl der Worte, die words entsprechen.
char **wewordv Zeiger auf eine Liste mit expandierten Wor-
ten.
sizet weoffs zu reservierende Slots am Anfang von
wewordv.
Das Argument flags für die Funktion wordexp() steht für die bitweise,
inklusive ODER-Verknüpfung der folgenden Flags:
WRDEAPPEND Generierte Worte an die schon vorher generierten Worte
anhängen.
WRDEDOOFS Anzahl der Nullzeiger, die vor wewordv eingefügt werden
sollen.
WRDENOCMD Fehlschlag, wenn Kommando-Substitution angefordert wird.
WRDEREUSE Das Argument pwordexp wurde an einen vorherigen, erfol-
greichen Aufruf von wordexp() übergeben, wurde aber nicht
an wordfree() übergeben. Das Ergebnis ist das gleiche,
als ob die Anwendung wordfree() und dann wordexp() ohne
WRDEREUSE aufgerufen hätte.
WRDESHOWERR stderr nicht zu /dev/null umleiten.
WRDEUNDEF Nach einem Versuch, eine undefinierte Shell-Variable zu
expandieren, soll ein Fehler gemeldet werden.
Die folgenden Konstanten sind als Rückgabewerte für Fehler definiert:
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
wordexp(5) wordexp(5)
WRDEBADCHAR Eines der folgenden Zeichen:
newline | & ; < > ( ) { }
erscheint in words in einem ungeeigneten Kontext ohne
Anführungszeichen.
WRDEBADVAL Bezug auf eine nicht definierte Shell-Variable, wenn
WRDEUNDEF in flags gesetzt ist.
WRDECMDSUB Kommando-Substitution erforderlich, wenn WRDENOCMD in
flags gesetzt ist.
WRDENOSPACE Ein Versuch der Speicherzuweisung schlug fehl.
WRDENOSYS Die Implementation unterstützt die Funktion nicht.
WRDESYNTAX Shell-Syntaxfehler (zum Beispiel fehlende Klammer oder
nicht abgeschlossene Zeichenkette).
Die folgenden Anweisungen sind als Funktionen vereinbart. Sie können
auch als Makro vereinbart werden:
int wordexp(const char *words, wordexpt *pwordexp, int flags);
void wordfree(wordexpt *pwordexp);
Die Implementation kann weitere Makros oder Konstanten definieren. Die
Namen müssen mit WRDE beginnen.
SIEHE AUCH
wordexp(3C).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98