IF

Schablone:
ARG/M, NOT/S, WARN/S, ABORT/S, ERROR/S,
FAIL/S, EQ/S, GT/S, GE/S, VAL/S, EXISTS/S,
_DEBUG_/S, __HB1/S, _WB/S


Wozu?:
In einer Skriptdatei wird ein Anweisungsblock
bedingt ausgeführt. Wenn die Bedingung, die
durch die Optionen des IF-Befehls angegeben
wird, erfüllt ist, wird die Ausführung des
Skripts direkt nach der IF-Anweisung
fortgesetzt und, falls auf ein ELSE getroffen
wird, die darauf folgenden Anweisungen
übersprungen, bis zum nächsten ENDIF.
Ansonsten wird das nächste Auftreten eines
ELSE oder ENDIF-Befehls gesucht und die
Ausführung danach fortgesetzt.

Wie?:

Wo?:
Intern

Was sonst noch?:
Siehe auch ELSE und ENDIF

Info

Schablone:
DEVICE

Wozu?:
Informationen (Name, Größe, Belegung, ...)
über die verfügbaren Datenträger werden
ausgegeben.

Wie?:

DEVICE
Der Name des Gerätes (mit Doppelpunkt),
über das Informationen ausgegeben werden
sollen.

Wo?:
Intern

Was sonst noch?:
Wird kein Laufwerk angegeben, dann gibt INFO
Informationen über alle angeschlossenen
Datenträger aus.

Join

Schablone:
FROM/A/M, TO/A/K, BUF=BUFFERS/N/K,
VERBOSE/S


Wozu?:
Die unter FROM angegebenen Dateien werden zur
unter TO angegebenen aneinandergehängt.

Wie?:

FROM
Die Namen der Quelldateien.

TO
Die zu erzeugende Zieldatei.

BUFFERS
Hier kann eine Anzahl von 512
Byte-Blöcken, die als Zwischenspeicher
beim zusammenfügen der Dateien dienen,
angegeben werden, was möglicherweise die
Geschwindigkeit des Vorganges erhöht,
falls ein größerer Pufferbereich als der
voreingestellte verwendet wird.
Voreingestellt: 8. Der erlaubte Bereich
liegt zwischen 1 und 500.

Wo?:
SYS:c

Was sonst noch?:
Es ist zwar theoretisch möglich, ein
Namensmuster bei FROM anzugeben, das alle zu
verbindenden Dateien beschreibt. Die
Reihenfolge des Aneinanderhängens kann
allerdings nicht bestimmt werden.

LAB

Schablone:
keine

Wozu?:
In einem Skript wird eine Sprungmarke
festgelegt, die dann mit dem Befehl SKIP angesprungen werden
kann. Die Sprungmarke selbst besteht aus einer
alphanumerischen Zeichenkette.

Wie?:
LAB

Wo?:
Intern

Was sonst noch?:
Darf nur in Skripts verwendet werden.

LHA

Schablone:
S=SILENT/S, Q=QUIET/S, V=VERBOSE/S,
F=FORCE/S, I=IGNOREDIR/S, N=NOBAK/S, M=MOVE/S,
SA=SETARCBIT/S, UA=USEARCBIT/S, O=OLD/S,
Z=NOCOMPRESS, COM=COMMAND/A, ARC=ARCHIVE/A,
BASE=BASEDIR, FL=FILELIST/M


Wozu?:
Lempel-Ziv/Huffman
Archivierungs- und
Datenkompressionsprogramm. Allseits bekannter
und für viele Rechnerplatformen erhältlicher
Archivierer. Komprimiert nach dem
Lempel-Ziv/Huffman Verfahren. Die entstehenden
Archive haben die Endung *.lha, es können auch
Archive mit der Endung *.lzh entpackt werden.

Wie?:

SILENT
Es erfolgt keinerlei Ausgabe während des
Packens und Entpackens.

QUIET
Keine Fortschrittsanzeige.

VERBOSE
Detaillierte Fortschrittsanzeige +
weitere Infos.

FORCE
Bereits existierende Dateien werden ohne
weitere Sicherheitsabfrage
überschrieben.

IGNOREDIR
Die vorhandene Verzeichnisstruktur wird
eingeebnet, das heißt: Beim Packen
werden die Dateien ohne ihre Pfadnamen
ins Archiv übernommen, beim Entpacken
werden sie alle ins aktuelle oder - wenn
BASEDIR angegeben wurde - das durch
BASEDIR angegebene Verzeichnis
geschrieben.

NOBAK
Nach dem Hinzufügen oder Löschen von im
Archiv bereits existierenden Dateien
werden die Sicherungskopien gelöscht

MOVE
Die Originaldateien werden nach dem
Archivieren gelöscht.

SETARCBIT
Das Archiv-Schutzbit der archivierten
Dateien wird gesetzt.

USEARCBIT
Es werden nur Dateien archiviert, bei
denen das Archiv-Bit nicht gesetzt ist.

OLD
Beim Archivieren wird das alte
(LHArc-kompatible) Verfahren verwendet.

NOCOMPRESS
Die Dateien werden nur archiviert, nicht
aber komprimiert.

COMMAND
Einer der folgenden Befehle:
A: Dateien zum Archiv hinzufügen, die
Pfade werden mit archiviert (Add)
E,X: Dateien aus dem Archiv extrahieren
(EXtract)
L: Inhalt des Archivs auflisten (List)
U: Dateien im Archiv gegen ältere
Version ersetzen (Update)
D: Dateien aus dem Archiv löschen
C: Neues Archiv erzeugen (Create)
T: Prüfsummen (CRC) der archivierten
Dateien testen (Test)

ARCHIVE
Der Name des Archivs. Die Endung .lha
wird automatisch angehängt, falls der
Name nicht auf .lzh oder .lha endet.

BASEDIR
Das Verzeichnis, von dem aus mit dem
Archivieren oder Extrahieren begonnen
werden soll. Unterverzeichnisse werden
mitarchiviert, bzw. beim Entpacken neu
erzeugt (falls nicht IGNOREDIR gesetzt
ist).

FILELIST
Die Dateien, die Archiviert werden
sollen. Es können natürlich auch
Namensmuster angegeben werden.

Wo?:
SYS:c

Was sonst noch?:
Bisher sind noch nicht alle Funktionen von
Amiga-Lha integriert, aber die wichtigsten
sind vorhanden. Es existieren aber auch einige
nützliche nicht-Amiga-lha-Anweisungen und es
läßt sich eigentlich alles verwirklichen, was
notwendig ist, oft sogar einfacher als beim
bisherigen LHA von anderen Rechnerplattformen.
Vor allem durch die Unterstützung des
Argumentschablonenformats von p.OS vereinfacht
sich die Bedienung erheblich.

List

Schablone:
DIR/M, NODATES/S, DATES/S, TO/K, SUB/K,
SINCE/K, UPTO/K, QUICK/S, BLOCK/S, NOHEAD/S,
FILES/S, DIRS/S, ALL/S, MA=MULTIASSIGN/S,
LFORMAT/K, NOLINE/S


Wozu?:
Ein Verzeichnis wird angezeigt, aber im
Gegensatz zu DIR mit allen
Schikanen: Schutzbits, Datum, Größe,
Kommentar, auf ein Verzeichnis gelegte
Zuweisungen usw.
Darüberhinaus läßt sich in das Ausgabeformat
in großem Umfang beeinflussen.

Wie?:

DIR
Die Verzeichnisse (oder Dateien) die
angezeigt werden sollen. Natürlich sind
auch Namensmuster erlaubt.

DATES
Das Änderungsdatum der Dateien wird
immer als Zahlenwert angezeigt
(Voreinstellung).

NODATES
Das Änderungsdatum der Dateien wird
nicht angezeigt.

TO
Umleitung der Ausgabe in diese Datei.

SUB
Dieses Muster wird auf die gefundenen
Dateien und Verzeichnisse zusätzlich
angewendet. Dadurch können zwei Muster
zur Suche herangezogen werden.

SINCE
Es werden nur Dateien ab diesem Datum
angezeigt.

UPTO
Es werden nur Dateien bis zu diesem
Datum angezeigt.

QUICK
Es werden nur die Namen der Dateien und
Verzeichnisse angezeigt.

BLOCK
Die Dateigröße wird in Blöcken anstatt
in Bytes angezeigt.

NOHEAD
Die Kopf/Abschlußzeile der Liste wird
weggelassen.

FILES
Es werden nur Dateien (keine
Verzeichnisse) angezeigt.

DIRS
Es werden nur Verzeichnisse angezeigt.

ALL
Es werden rekursiv auch
Unterverzeichnisse und deren Inhalt
angezeigt. Hierbei kann SUB sinnvoll
eingesetzt werden.

MULTIASSIGN
Ist DIR eine Mehrfach-Zuweisung, werden
alle Verzeichnisse angezeigt, die dieser
zugewiesen sind.

LFORMAT
Hier kann ein sog. "Format-String"
angegeben werden, mit dem sich die
Ausgabe des List-Befehls frei definieren
läßt. Es ist damit auch möglich, durch
den List-Befehl automatisch Skripte
erzeugen zu lassen, die dann mit Execute
ausgeführt werden können. Will man zum
Beispiel alle Dateien, die vor dem
01.07.97 erzeugt wurden löschen, ließe
sich das folgendermaßen machen:
list files upto 01-Jul-97 all lformat "delete %N" to T:WegMitDemAltenKram.script NOHEAD
execute T:WegMitDemAltenKram.script
Der Format-String besteht aus
irgendeiner Zeichenkette, in der
folgende Platzhalter vorkommen können:
%N: Der Dateiname (ohne Pfad)
%A: Die Schutzbits
%B: Größe der Datei in Blöcken
%C: Der Dateikommentar
%D: Das Datum der Datei
%E: Die Dateinamenserweiterung (das, was
hinter dem letzten Punkt im Dateinamen
steht)
%L: Die Größe der Datei in Bytes (bei
Verzeichnissen ist dies die Zeichenkette
DIR)
%M: Der Dateiname (ohne Erweiterung,
also bis zum letzten Punkt)
%P: Der Pfad (ausgehend vom aktuellen
Verzeichnis)
%F: Der absolute Pfad
%T: Die Erstellungszeit der Datei

NOLINE
Es wird kein Zeilenvorschub nach jedem
Eintrag ausgegeben

Wo?:
SYS:c

Was sonst noch?:
-

MakeDir

Schablone:
NAME/A/M, QUIET/S, ALL/S

Wozu?:
Anlegen eines (mehrerer) Verzeichnisse(s)

Wie?:

NAME
Namen der Verzeichnisse.

QUIET
Ausgabe wird unterdrückt.

ALL
Wird als NAME ein Pfad angegeben, dann
werden alle noch nicht existierende
Verzeichnisse darin erstellt.

Wo?:
Intern

Was sonst noch?:
-

Mount

Schablone:
DEV, FROM/K, LIST/S, ACTIVATE/S,
REMOVE/S, INACTIVATE/S, FORCE/S, GFX/S,
TEMPLATE/S, ARGS/F


Wozu?:
Geräte (Plattenpartitionen, Grafiktreiber,
Input/Output-Geräte usw.) werden ins System
eingebunden und können fortan durch ihren
Gerätenamen angesprochen werden. Mit der
Option LIST können die gemounteten Geräte
angezeigt werden. Für das neue Gerät muß in
der Datei "DEVS:Mountlist.arg" ein Eintrag
vorhanden sein.

Wie?:

DEV
Name des Gerätes (DOS-Device-Name).

FROM
Der Eintrag für das Gerät wird in der
unter FROM angegebenen Datei gesucht
anstatt in DEVS:Mountlist.arg.

LIST
Die vorhandenen ("geMounteten") Geräte
werden angezeigt.

ACTIVATE
Das angegebene Gerät wird sofort zur
Benutzung freigegeben.

REMOVE
Das angegebene Gerät wird aus dem System
entfernt, wobei auch die gesamten
Ressourcen freigegeben werden. Wird in
diesem Moment noch irgendwo auf das
Gerät zugegriffen, dann schlägt diese
Option fehl. Es kann dann FORCE
verwendet werden, wobei das nur im
Notfall geschehen sollte, da es
gefährlich ist, ein Gerät gewaltsam zu
entfernen.

INACTIVATE
Das Gerät wird deaktiviert, ohne jedoch
irgendwelchen Speicher freizugeben, es
kann dann mit der Option ACTIVATE später
wieder aktiviert werden

FORCE
Das Gerät wird auch
entfernt/deaktiviert, wenn es noch in
Gebrauch ist - VORSICHT, siehe oben.

GFX
Das Gerät ist ein Grafik-Treiber.

TEMPLATE
Es wird eine zusätzliche
Argumentschablone ausgegeben, die die
Argumente zeigt, die in der Datei
"DEVS:MountList.arg" stehen können.

ARGS
Hier können weitere Argumente angegeben
werden, die den Parametern in der Datei
"DEVS:MountList.arg" entsprechen. Damit
läßt sich ein vollständiger
MountList-Eintrag über die Kommandozeile
als Zeichenkette übergeben, so daß
kurzfristig oder zu Testzwecken auch
Geräte gemountet werden können, die
keinen Mountlist-Eintrag haben.

Wo?:
Intern

Was sonst noch?:
Werfen Sie auch einmal einen Blick in
"DEVS:MountList.arg". Dort werden vom
Installationsprogramm (MountAmigaVol) auch die
ausgewählten Amiga-Laufwerke eingetragen.

NewShell

Schablone:
WINDOW, NUM=PROCESSNUM/K/N, PRI/K/N,
STACK/K/N, STSCP=STARTSCRIPT/K,
ENDSCP=ENDSCRIPT/K, COM=COMMAND/K/F


Wozu?:
Ein neuer Shell-Prozeß wird in einem neuen,
durch WINDOW angegebenen Fenster geöffnet.

Wie?:

WINDOW
Spezifikation des zu öffnenden Console-Windows.

PROCESSNUM
Die Nummer des neuen Prozesses läßt sich
festlegen. Dadurch kann später ein
Control-C-Signal an
den Prozeß gesendet werden, ohne daß man
erst die Prozeßnummer herausfinden muß.

PRI
Die Priorität für den neuen Prozeß wird
festgelegt.

STACK
Die Stack-Größe für den neuen
Prozeß kann vorgegeben werden

STARTSCRIPT
Dieses Skript wird nach dem Öffnen des
neuen Fensters ausgeführt. Standardmäßig
ist es "S:StartShell.scp". Darin können
z.B. Festlegungen über Befehlsmakros,
Einstellungen des Befehlssuchpfades oder
des Formats der Eingabeaufforderung
vorgenommen werden

ENDSCRIPT
Das hier angegebene Skript wird
ausgeführt, wenn das Shell-Fenster (wie
auch immer) geschlossen wird. Es lassen
sich hier z.B. Log-Daten in eine Datei
speichern oder eine Abschlußnachricht
ausgeben oder auch Abbruchsignale an
Programme senden.

COMMAND
Hier kann ein Befehl (mit Argumenten)
angegeben werden, der gleich beim
Fensteröffnen ausgeführt wird. Das
Fenster bleibt aber danach als normales
Shell-Fenster geöffnet, im Gegensatz zu
RUN <>CON:

Wo?:
Intern

Was sonst noch?:
Vgl. auch die Befehle Run,
Alias, Prompt und
Path, sowie fast den gesamten
übrigen Teil dieser Anleitung...:-)

Path

Schablone:
PATH/M, ADD/S, SUB/S, RESET/S,
QUIET/S


Wozu?:
Der Befehls-Suchpfad der Shell wird gesetzt,
erweitert, verringert, gelöscht oder aber auch
nur angezeigt. Als "Suchpfad" wird eine Liste
von Verzeichnissen bezeichnet, die nach
ausführbaren Programmen durchsucht werden,
wenn an der Kommandozeile ein Befehlsname
eingegeben wird. Beim Aufruf ohne Parameter
wird der aktuelle Pfad angezeigt.

Wie?:

PATH
Die Verzeichnisse, die den Suchpfad
ausmachen sollen.

ADD
Normalerweise wird bei jedem Aufruf von
PATH, bei dem ein Verzeichnis angegeben
wird (also nicht wenn PATH nur zum
Anzeigen des aktuellen Pfades aufgerufen
wird), der aktuelle Pfad durch den
Angegebenen ersetzt. Ist allerdings ADD
angegeben, dann wird der aktuelle
Suchpfad um die im Argument PATH
übergebenen Verzeichnisse erweitert.

SUB
Das Gegenteil von ADD, die angegebene
Verzeichnisse werden aus dem aktuellen
Suchpfad entfernt.

RESET
Der Suchpfad wird geleert, alles was
danach noch ausgeführt werden kann, ohne
den vollen Pfad einzugeben sind die
internen Befehle und die im aktuellen
Arbeitsverzeichnis.

QUIET
Wie auch bei den meisten anderen
Befehlen, die ein Schalterargument
dieses Namens haben, wird damit jede
Ausgabe unterdrückt.

Wo?:
Intern

Was sonst noch?:
Der durch PATH definierte Suchpfad ist
keineswegs global gültig. Er gilt nur in dem
Shell-Prozeß, in dem der PATH-Befehl
ausgeführt wurde und in den von diesem Prozeß
aus gestarteten Shells. Darum ist der richtige
Platz für diesen Befehl in der Datei
"S:StartShell.scp". Siehe hierzu auch NewShell.

pMore



Schablone:
FILE/A, FONT/K, FS=FONTSIZE/N/K, HEX/S,
L=LEFT/K/N, T=TOP/K/N, W=WIDTH/K/N,
H=HEIGHT/K/N, TS=TABSIZE/K/N, BG=BGNAME/K,
AS=AUTOSWITCH/S


Wozu?:
Text- und Hex-Anzeigeprogramm, Ausgabe erfolgt
aber nicht, wie der Name dank seines
Bekanntheitsgrades von fast allen anderen
Betriebssystemen her vermuten läßt, über die
Standardausgabe (für pipe-Freaks nebenbei
bemerkt: Auch der anzuzeigende Text kann nicht
über die Standardeingabe gelesen werden),
sondern in einem speziellen Fenster.

Wie?:

FILE
Die Datei, die angezeigt werden soll.

FONT
Name eines Zeichensatzes zur Anzeige des
Textes.

FONTSIZE
Die Größe des Zeichensatzes.

HEX
Die angegebene Datei wird hexadezimal
ausgegeben. Auf diese Weise lassen sich
auch Dateien anzeigen, die binäre Daten
enthalten (falls eine Hoffnung besteht,
aus der Ausgabe schlau zu werden).

LEFT
Abstand des Ausgabefensters vom linken
Bildschirmrand.

TOP
Abstand vom oberen Bildschirmrand.

WIDTH
Breite des Fensters.

HEIGHT
Höhe desselben.

TABSIZE
Textdateien enthalten mitunter
Tabulatoren (für Einrückungen etc.).
Hier kann angegeben werden, wieviele
Stellen ein Tabulator-Zeichen breit sein
soll.

BGNAME
Hier kann eine Bilddatei angegeben
werden, die kachelartig die
Hintergrundfläche des Fensters bedecken
soll. So läßt sich pMore sogar als
Grafikanzeiger mißbrauchen, der es sogar
erlaubt, ein Bild zu betiteln...:)

AUTOSWITCH
Automatische Erkennung ob es sich um
eine Text- oder Binärdatei handelt und
entsprechene Anzeige.

Wo?:
Sys:C

Was sonst noch?:
Bitte nicht mit dem "More"-Befehl von z.B.
AmigaOS verwechseln. Die Vorteile der schönen
grafischen Aufbereitung des Textes (Fonts,
Hintergrundgrafik) müssen durch den Nachteil
erkauft werden, daß der Text nicht über die
Standardausgabe angezeigt werden kann. Ein
Beispiel: Wenn die Netzwerksoftware
Bestandteil des p.OS wird, kann jemand, der
sich über ein Terminal in den Computer
eingeloggt hat "pMore" nicht verwenden! (Außer
er verwendet die Netzwerktransparenten
RTG-Fähigkeiten, die dann bestimmt auch zur
Verfügung stehen werden...).
Für die Shellbasierende Textausgabe kann auf
"Type" zurückgegriffen werden.

pOSPrefs

Schablone:
F=FONT/K, FS=FONTSIZE/K/N,
PUBSCREEN/K


Wozu?:
Das Voreinstellerprogramm für p.OS wird
gestartet.

Wie?:

FONT
Wahlweise anzugebender Zeichensatz für
die Benutzeroberfläche des Programms.

FONTSIZE
Höhe des Zeichensatzes.

PUBSCREEN
Öffentlicher Bildschirm,
auf dem das Fenster des
Programms geöffnet werden soll.

Wo?:
SYS:Tools

Was sonst noch?:
Zu Sinn, Zweck und Bedienung des Programms
bitte einmal den Abschnitt p.OS-Prefs begutachten.

PrefsControl

Schablone:
LIST/S, TOUCH/S, REMOVE/S, WAIT/S

Wozu?:
Bindet die Voreinstellungen ins System ein,
listet sie auf und aktualisiert sie.

Wie?:

LIST
Die aktuellen Voreinstellungen werden
aufgelistet.

TOUCH
Veranlaßt das Laden der
Voreinstellungsdateien für den
angegebenen Einsteller (z.B.
'sys/background' für den
Hintergrund-Einsteller).

WAIT
Es wird die angegebene Zeit gewartet,
bevor die neuen Daten ermittelt werden.

Wo?:
Intern

Was sonst noch?:
Dieser Befehl wird normalerweise beim Start
des Systems, sowie bei Änderungen in pOSPrefs,
ausgeführt, so daß sich der normale Anwender
darum eigentlich nicht zu kümmern braucht.

Prompt

Schablone:
PROMPT

Wozu?:
Das Format der Shell-Eingabeaufforderung wird
eingestellt. Das aktuelle Format wird
ausgegeben, wenn der Befehl ohne Argumente
aufgerufen wird.

Wie?:

PROMPT
Eine Zeichenkette, die als
Eingabeaufforderung dient, wobei in der
Zeichenkette folgende Platzhalter
vorkommen können:
%N: Die Nummer des aktuellen
Shell-Prozesses
%S: Das aktuelle Verzeichnis
%R: Der Rückgabewert
der letzten Operation
%F: letzter interner pDOS-Fehlercode

Wo?:
Intern

Was sonst noch?:
Der eingestellte Prompt gilt nur in der
aktuellen Shell oder in deren Tochter-Shells.

Protect

Schablone:
FILE/A, FLAGS, ADD/S, SUB/S, ALL/S,
QUIET/S


Wozu?:
Die Zugriffsrechte/Schutzflags
einer Datei werden verändert und/oder
angezeigt.

Wie?:

FILE
Die zu verändernde Datei.

FLAGS
Eine beliebige Kombination der im
Abschnitt Dateisystem
vorgestellten Schutzflags (ohne
Leerstellen dazwischen).

ADD
Die FLAGS werden gesetzt
(eingeschaltet).

SUB
Die FLAGS werden ausgeschaltet.

ALL
Wurde ein Verzeichnis angegeben, werden
bei Aktivierung dieser Option auch alle
Unterverzeichnisse und die Dateien darin
mitbehandelt.

QUIET
Keine Ausgabe.

Wo?:
Intern

Was sonst noch?:
Zur genaueren Beschreibung der möglichen
Schutzflags bitte den Abschnitt Dateisystem
zu Rate ziehen.

Quit

Schablone:
RN=RETURNNUM/N, RC=RETURNCODE/K,
FORCE/S


Wozu?:
Ein Skript wird unter Rückgabe eines
Fehlercodes/Rückgabewertes beendet.

Wie?:

RETURNNUM
Der Rückgabewert in numerischer Form.
Bitte hierzu den Abschnitt Fehlerbehandlung
anschauen!

RETURNCODE
Der Rückgabewert als eine der
Möglichkeiten NOERROR, WARN, ABORT,
ERROR oder FAIL.

Wo?:
Intern

Was sonst noch?:
Nur in Skripts sinnvoll!

Relabel

Schablone:
DEVICE/A, NAME

Wozu?:
Umbenennen eines Datenträgers, bzw. Anzeigen
seines Namens, wenn der Befehl ohne das
Argument NAME aufgerufen wurde.

Wie?:

DEVICE
Der Gerätename, (DOS-Device-Name) mit
abschließendem Doppelpunkt.

NAME
Der neue Datenträgername, (Volume-Label)
ohne Doppelpunkt!

Wo?:
SYS:C

Was sonst noch?:
Zum Unterschied zwischen Geräte- und
Datenträgernamen: Siehe Abschnitt Dateisystem

Rename

Schablone:
FROM/A, TO=AS/A, QUIET/S

Wozu?:
Dateien oder Verzeichnisse werden umbenannt,
was einem Verschieben in ein anderes
Verzeichnis entspricht, falls unter TO ein
anderes übergeordnetes Verzeichnis angegeben
wird als unter FROM. Ein Umbenennen von
Datenträger zu Datenträger ist allerdings
nicht möglich, dazu muß die Datei zuerst
kopiert und dann die Originaldatei gelöscht
werden.

Wie?:

FROM
Quelldatei, bzw. alter Name der Datei.

TO
Zieldatei oder -Verzeichnis, bzw. neuer
Name der Datei.

Wo?:
Intern

Was sonst noch?:
Bereits existierende Dateien können mit Rename
nicht überschrieben werden. Es wird eine
Fehlermeldung ausgegeben, falls das versucht
wird.

RequestChoice

Schablone:
TITLE, BODY/A, GAD=GADGETS/A,
PUBSCREEN/K, HELPID/K, HELPFILE/K, IDCMP/N/K,
TYPE/N/K, GFXFILE/K


Wozu?:
Shell-Skripte können ein einfaches
Auswahlfenster (Easy-Requester) verwenden, das
einen Text, eine kleine Grafik und einen oder
mehrere Button-Gadgets enthält. Ein
Rückgabewert zeigt dann an, welcher Knopf
angeklickt wurde.

Wie?:

TITLE
Der Titel des Auswahlfensters

BODY
Der Informationstext, der im Requester
angezeigt wird.

GADGETS
Hier stehen, durch "|" getrennt, die
Beschriftungen der Button-Gadgets. Es
muß mindestens eine angegeben werden.

PUBSCREEN
Öffentlicher Bildschirm, auf dem der
Requester geöffnet werden soll.

HELPID
Kennung, nach der in der Hilfe-Datei
gesucht werden soll.

HELPFILE
Name der Datei, die die Hilfetexte
enthält.

IDCMP
Hier kann eine Signalmaske angegeben
werden. Trifft ein entsprechendes Signal
ein, z.B. "Fenster-Schließ-Gadget
angeklickt", so wird das Fenster
gechlossen. Eine tiefergehende Erklärung
der einzelnen Signalbits führt hier zu
weit, aber in der
Entwickler-Dokumentation wird auf solche
Themen ausführlich eingegangen.

TYPE
Bestimmt den Typ des Fensters (z.B.
0x1001 = Rückfrage).
Im p.OS-Prefs-Programm
können für die einzelnen Requester-Typen
verschiedene Erscheinungsformen
ausgewählt werden.
Auch zu den hier verwendbaren
Typebezeichnern die
Entwickler-Dokumentation heranziehen.

GFXFILE
Bild, z.B. ein Icon, das im Requester
zusätzlich zum Text BODY angezeigt wird
und den Sinn des Requesters deutlich
macht.

Wo?:
Intern

Was sonst noch?:
Nur in Skripts sinnvoll verwendbar, z.B. für
Rückfragen und Verzweigungen.

Resident

Schablone:
NAME, LIB=LIBRARY/K, REMOVE/S,
DEV=DEVICE/K, TESTSEGM/K, PSEG/K, FILE/K,
ADD/S, REPLACE/S


Wozu?:
Shell-Befehle (Programme), Libraries und Devices
können speicherresident gemacht werden. Wird
kein Argument angegeben, wird die Liste der
residenten Objekte angezeigt. Es können auch
Objekte, die schon standardmäßig resident
sind, z.B. interne Shell-Befehle, inaktiviert
werden, um später installierten Programmen
gleichen Namens den Vorrang zu geben.

Wie?:

NAME
Der Name, unter dem das residente Objekt
später aufgerufen werden kann.

LIBRARY
Wenn eine Library
resident gemacht werden soll, dann muß
sie hier angegeben werden.

REMOVE
Das durch NAME bestimmte Objekt wird aus
der Liste der speicherresidenten Objekte
entfernt und der Speicherplatz wird
freigegeben. Dies gilt auch für interne
Shell-Befehle, die dann nicht mehr
ausführbar sind.

DEVICE
Falls das residente Objekt ein Device
ist, wird es hier angegeben

FILE
Ist das Objekt ein Programm, wird es
hier angegeben. Es können nur Programme
resident gemacht werden, die reentrant
und reexecutable sind.
Meist ist dies am "p"-Schutzflag der Datei zu erkennen.
Die internen Shell-Befehle sind immer
resident.

ADD
Wenn ein Objekt vorher schon unter einem
anderen NAMEn resident war, wird bei
Aktivierung dieser Option nicht (wie bei
REPLACE, das standardmäßig gilt) der
neue NAME durch den alten ersetzt,
sondern das residente Objekt läßt sich
fortan sowohl unter dem alten als auch
dem neuen Namen aufrufen.

REPLACE
Dies ist die Standardoption. Wenn das
gleiche Objekt schon unter einem anderen
NAMEn in der Liste der residenten
Objekte steht, wird der alte NAME durch
den neuen ersetzt.

Wo?:
Intern

Was sonst noch?:
Bitte beachten, daß die Programme reentrant
(Wiedereintrittsfähig) und reexecutable
(Wiederholt ausführbar) sein müssen.

Run

Schablone:
NUM=PROCESNUM/K, NAME=PROCESSNAME/K,
PRI/K/N, STACK/K/N, COM=COMMAND/A/F


Wozu?:
Für einen Befehl wird ein neuer Prozeß
erzeugt, der sich vom aktuellen Shell-Prozeß
loslöst und parallel dazu abläuft.

Wie?:

PROCESSNUM
Die Nummer, die der neue Prozeß haben
soll, dient dem besseren späteren
Auffinden.

PROCESSNAME
Der Name des neuen Prozesses, ebenfalls
dazu gedacht, daß man die Prozesse
später z.B. besser mit dem Control-Befehl
besser abbrechen kann, ohne lange in der
Prozeßliste suchen zu müssen.

PRI
Die Priorität des neuen Prozesses.

STACK
Die Stack-Größe für den Prozeß
wird festgelegt.

COMMAND
Der Befehl mit optional folgenden
Argumenten, der gestartet werden soll.

Wo?:
Intern

Was sonst noch?:
Zur Beachtung: Da die Standardein- und Ausgabe
des Run-Befehls immer noch über das
ursprüngliche Shell-Fenster erfolgt, kann
dieses nicht geschlossen werden, solange ein
mit Run gestartetes Programm noch läuft. Es
sei denn, die Ein- und Ausgabeströme des
Run-Befehls werden entsprechend umgeleitet.
Wenn beispielsweise die p.OS-Workbench beendet
wurde und wieder gestartet werden soll, und
man möchte nicht immer ein Shell-Fenster
geöffnet haben, dann ist so zu verfahren:
Run <>NIL: wb, danach läßt sich
das Shell-Fenster schließen.

Set

Schablone:
NAME, ENV=GLOBAL/S, SAVE=ENVARC/S,
ADD/S, SUB/S, STRING/F


Wozu?:
Der Wert einer Shell-Variablen wird gesetzt
oder verändert.

Wie?:

NAME
Der Name der Variablen.

GLOBAL
Die Variable soll Global sein, also
systemweit gelten, nicht nur in der
Shell, in der sie gesetzt wurde und
deren Tochter-Shells.

ENVARC
Die Variable soll mit ihrem Wert im
Verzeichnis EnvArc: gespeichert werden,
so daß sie nach einem Neustart des
Systems unverändert zur Verfügung steht.

ADD
Wenn die Variable unter dem Namen NAME
bereits existiert, wird der STRING an
den bisherigen Wert diese Variablen
angehängt.

SUB
Entfernt den angegebenen Teil aus der
bereits existierenden Variable.

STRING
Der eigentliche Wert der Variablen.
Diese Zeichenkette braucht - auch wenn
sie Leerzeichen enthält - nicht in
Anführungszeichen gesetzt werden. Die
Anführungszeichen wären ein Teil der
Zeichenkette.

Wo?:
Intern

Was sonst noch?:
Siehe auch Shell-Variablen

SKIP

Schablone:
LABEL/A

Wozu?:
In einem Shell-Skript wird an die angegebene
Marke LABEL gesprungen.

Wie?:

LABEL
Die Marke, zu der Verzweigt werden soll.
In Skripts ist es oft sinnvoll, abhängig
von einer Bedingung an eine andere
Stelle des Skripts zu springen. Dazu
können die sog. Labels verwendet werden.
Diese bestehen aus dem Kommando LAB,
das gefolgt von einem Namen irgendwo in
der Skriptdatei steht.
Der SKIP-Befehl sucht dann die
Stelle in der Datei auf, an der das
angegebene Label steht und setzt die
Ausführung an dieser Stelle fort.

Wo?:
Intern

Was sonst noch?:
Darf nur in Skripts verwendet werden. Siehe
auch LAB , IF und ELSE.

Stack

Schablone:
SIZE/N

Wozu?:
Die Größe des Stack-Speichers
für den aktuellen Shell-Prozeß wird
eingestellt oder - falls das Argument nicht
angegeben wird - angezeigt.

Wie?:

SIZE
Stack-Größe in Bytes, Voreinstellung ist
8000.

Wo?:
Intern

Was sonst noch?:
-

Split

Schablone:
FILE/A, AS=TO/A, S=SIZE/A/N

Wozu?:
Eine Datei wird in kleinere Dateien mit der
jeweiligen Größe SIZE aufgeteilt. Die neuen
Teil-Dateien bekommen den Namen, der als TO
übergeben wurde, gefolgt von einem Bindestrich
und einer 3-stelligen laufenden Nummer.

Wie?:

FILE
Die zu teilende Datei

TO
Der Name der Teil-Dateien, an den
automatisch eine laufende Nummer in der
Form "-xxx" angehängt wird.

SIZE
Größe der einzelnen Teile

Wo?:
sys:c

Was sonst noch?:
Die Anzahl der Teildateien ist wegen des
Formats der Dateierweiterung auf 999 begrenzt
- es wird wohl aber kaum vorkommen, daß das
ausgenutzt werden muß. Dieser Befehl ist
besonders sinnvoll, um große Dateien, z.B.
Archive, in diskettengerechte Happen
aufzuteilen oder per e-mail zu verschicken, da
es immer noch mail-Server gibt, die nur
e-mails mit einer bestimmten Maximalgröße
weiterleiten. Zum späteren Zusammenfügen der
einzelnen Dateien dient der Join-Befehl.

Type



Schablone:
FROM=FILE/A, NUMBER/S, HEX/S

Wozu?:
Der Inhalt einer Datei wird über die
Standardausgabe (die natürlich auch umgeleitet
werden kann) ausgegeben.

Wie?:

FILE
Der Name der auszugebenden Datei

NUMBER
Es werden Zeilennummern mit ausgegeben

HEX
Die Ausgabe erfolgt im
Hexadezimalsystem, damit auch
Binärdateien sinnvoll angezeigt werden
können.

Wo?:
Intern

Was sonst noch?:
Die Ausgabe kann im CON: Fenster mit der
Leertaste angehalten und mit der return-Taste
fortgesetzt werden.

UnAlias

Schablone:
NAME/A

Wozu?:
Ein Alias-Befehlsmakro
wird gelöscht.

Wie?:

NAME
Der Name des zu löschenden Makros

Wo?:
Intern

Was sonst noch?:
Siehe auch Alias

UnSet

Schablone:
NAME/A, ENV=GLOBAL/S,
SAVE=ENVARC/S


Wozu?:
Eine Shell-Variable wird gelöscht

Wie?:

NAME
Name der Variablen

GLOBAL
Wenn es sich um eine globale Variable
handelt, wird sie auch global gelöscht.

ENVRARC
Die Variable wird aus dem Verzeichnis
EnvArc: gelöscht, so daß sie auch nach
einem Neustart des Systems nicht wieder
vorhanden ist.

Wo?:
Intern

Was sonst noch?:
Siehe auch Shell-Variablen

Version

Schablone:
NAME

Wozu?:
Zeigt die Versions-Information der Datei NAME
an, oder die Versionsinformation des
Betriebssystems, falls kein NAME angegeben
wurde

Wie?:

NAME
Der Name der Datei oder des residenten
Objekts, dessen Versionsinformation
angezeigt werden soll.

Wo?:
SYS:C

Was sonst noch?:
-

Wait

Schablone:
SEC=SECS/N, MIN=MINS/K/N,
MICROS/K/N


Wozu?:
Eine bestimmte Zeit warten.

Wie?:

SECS
Ruhezeit in Sekunden.

MINS
Ruhezeit in Minuten.

MICROS
Ruhezeit in Mikrosekunden.

Wo?:
Intern

Was sonst noch?:
-Die Parameter können auch kombiniert werden;
z.B. MIN=1 SEC=3

wb

Schablone:
SNOOP/S, FLUSH/S, BACKDROP/S

Wozu?:
Die p.OS-Workbench wird gestartet.

Wie?:

SNOOP
Zeigt für Entwickler zusätzliche Daten
an. Vor allem im Fehlerfall sehr
hilfreich.

FLUSH
Der Speicher wird aufgeräumt.

BACKDROP
Das p.OS-Workbench-Fenster hat keinen
Rahmen und keine System-Gadgets,
befindet sich immer im Hintergrund und
füllt den ganzen Bildschirm aus.

Wo?:
SYS:c

Was sonst noch?:
Siehe auch Abschnitt Die p.OS-Workbench.

Why

Schablone:
NUM/N, FAIL/N

Wozu?:
Eine Meldung wird ausgegeben, die den zuletzt
aufgetretenen Fehler erklärt.

Wie?:

NUM
Interne pDOS-Fehlernummer zu der eine
Erklärung erfolgen soll.

FAIL
Fail-Level: NOERROR, WARN, ABORT, ERROR,
FAIL

Wo?:
Intern

Was sonst noch?:
-

ZipTool

Schablone:
DRIVE, DEVICE/K, UNIT/N/K, FLAGS/K/N,
WLOCK/S, RWLOCK/S, UNLOCK/S, PASSWORD/K,
EJECT/S, PUBSCREEN/K, GUI/S,
MAXUNITS/N/K


Wozu?:
Steuerungsprogramm für Sonderoptionen von
IOMEGA(R) ZIP(R)-Laufwerken. Wird das Programm
ohne Argumente aufgerufen, wird eine grafische
Benutzeroberfläche geöffnet, in der alle
Einstellungen vorgenommen werden können.

Wie?:

DRIVE
Der DOS-Gerätename des Laufwerks.

DEVICE
Das HREF="glossar.html#device">Device
das dieses Laufwerk steuert. Vorgabe ist
"pSCSI.device".

UNIT
Die Einheitennummer (Entspricht meist
der SCSI-Target-ID des Gerätes.
Vorgabe ist hier "5",da externe Zip-Laufwerke
sich nur auf entweder 5 oder 6 einstellen lassen.

FLAGS
Flags, die dem Gerät beim Öffnen
übergeben werden. Eine genaue
Beschreibung würde hier aber zu weit
führen. In der Regel existieren aber
keine Flags. Vorgabe:0

WLOCK
Das Zip-Medium wird schreibgeschützt.

RWLOCK
Das Zip-Medium wird mit einem PASSWORD
lese- und schreibgeschützt.

UNLOCK
Aufheben des Schreibschutzes, falls beim
Schützen ein Paßwort verwendet wurde,
muß es als PASSWORD mit angegeben
werden.

PASSWORD
Paßwort zum Schützen oder Schutzaufheben
des Mediums.

EJECT
Medium auswerfen.

PUBSCREEN
Öffentlicher Bildschirm, auf dem die
Benutzeroberfläche dargestellt werden
soll.

GUI
Die Benutzeroberfläche wird geöffnet.
Dies ist die Vorgabeoption. Wird auch
diese mit OFF ausgeschaltet, werden nur
die Laufwerksdaten ausgegeben, bzw. die
über die Optionen angegebenen Aktionen
ausgeführt.

MAXUNITS
Maximale Anzahl von Geräten, die das
DEVICE ansprechen kann. Vorgabe: 15

Wo?:
SYS:Tools

Was sonst noch?:
Vorsicht beim Schützen eines Datenträgers mit
Paßwort. Wer das Paßwort vergißt, hat keine
Möglichkeit mehr, den Schreib-Lese-Schutz
wieder aufzuheben!!!