Anweisungen Für Shells Version Ein 17-Feb-90 ===================================Inhalt ------- O. Changes Über ältere Versionen I. Description II. Overview bei Bedeutend Funktionen III. Restrictions IV. PIPES V. Command Pre-processor VI. Command Zeile schriebe VII. Function Tasten VIII. Shell Kommandos IX. Special setze Variablen X. Advanced Topics VIII. Shell Kommandos IX. Special setze Variablen X. Advanced Topics XI. Example Quell Files XII. Default Werte XIII. Why ARP ? O wechselt Über ältere Versionen Neues zu Ein - Diese Version Funktionen hauptsächlich Fehler fixes und corrections:* Fenster Titel ist wiederhergestellt after quitting. * rxrec jetzt antwortet zu der 'bye' Nachricht * rpn kann jetzt ist redirected und piped;wie auch immer wie auch immer wie auch immer diese veranlaßt Einige Problem sehe für informiere * resident Liste jetzt arbeitet mit ARP 1.3.Zu recompile Quell du muß modifiziere zusammengefügt File wechsele Definition bei rpn_Usage in Structur ResidentProgramNode von Lange Zu Wort * Preis nein mehr nimmt an nimmt an 20 CLI Maximum * du kann jetzt split lange Zeilen in Quell Files sogar in mehr als 2 Zeilen - Added viel informiere in diese Dokumentationen about Quell Files Kapitel Added copyright beachte sehe unter Beschränkungen . Neues zu Ein Diese Version ist aufgerufen Ein weil es ist nicht 100% kompatibel mit vorher Versionen Wir wähle aus wähle aus zu accept diese in Ordnung zu besser unterstüzt der neues ARP.library 1.3.- äußere Kommandos sind searched in ein unterschiedliche Ordnung als bevor Shells ist jetzt AFTER aktuelles Verzeichnis AmigaDOS Pfad und C - ARP Muster passe zusammen passe zusammen hat war durchgeführt in teilweise für Zeile args expanding,voll für sucht W - Innere wechselt für verschiedenartig optimizations. - sucht Kommando hat war verbessert in einige Wege - Neues Kommandos basename,tackon. - Neues Optionen wenn V resident D fornum V S dir N - behoben Fehler mit dir einige Verzeichnisse remained locked)foreach V htype Leerzeichen wo treated wie binär informiere für Devices 32M - rback Kommando jetzt arbeitet OK run wie auch immer wie auch immer tue nicht - Oh,Ich vergessen es hat ein Arexx Port Und du tue nicht tue nicht sogar bekomme zu bekomme Arexx zu benutze es Sehe neues Kommandos rxsend,rxrec Neues zu 3.03A: - Neues filter Kommandos fltlower,fltupper. - Added Voreinstellung File Funktionen jetzt wenn du bekomme ein File benannt S Logge ein Logge ein es werde ist sourced für jeder Shells du gestartet - Neues Option dir C fangfängst jetztfalls wennkann nichtfindest irgendwelcheFilepaßt zusammen deinem MusterJetzt benutzt DOS Pakete zu bekomme ptr zu CLI Fenster diese fixes ein Fehler diese verursacht Probleme wenn Shells war run an unactive Windows - behoben kleiner Fehler gedruckt einige mehr ASCII Bytes einige Kommandos zurückgeliefert zufällig Werte Geschichte nicht getan nicht getan drucke CR's). kgeliefert zufällig Werte Geschichte nicht getan nicht getan drucke CR's). - Heavy mods zu diese File Ich Beschreibung Diese Version bei Shells ist der gefolgt bei Shells V2.04 C Copyright 1986,Matthew Dillon,All Rechte geschützt Shells V2.04M-V2.M von Steve Drew Shells V2.08MI, V3.xxA und V4.xxA von Carlo Borreo & Cesare Dieni sende suggestions/criticism/anything sonst zu Carlo Borreo oder Cesare Dieni an BITNET:PERUGIA@ICNUCEVM.BITNET Fido-Netz: 2: 332/602.0@FIDONETII# Fido-Netz vor kurzem vor kurzem gewechselt oder Carlo Borreo Cesare Dieni über fügtest zusammen schrieben über Bewältigung errichtetest für Einschränkungen o VDK Handler hat ein Fehler mit Einstellungen File dates damit wenn benutze der kopiere Kommando und VDK du werde benutze der -d switch anders o VDK Handler hat ein Fehler mit Einstellungen File dates damit wenn benutze der kopiere Kommando und VDK du werde benutze der -d Schalter anders dein File Datum in vdk:werde ist fehlerhaft (Diese ist nicht ein Fehler mit Shells o Wenn benutze conman es darf ist beste zu gestartet Shells mit dem EinschaltenLogge ein Logge ein zu schalte aus Shells Kommando Zeile schriebe und benutze conmans an Stelle von an Stelle von an Stelle von o Du kann nicht kann nicht benutze Buchstaben mit Code > 127 < d.h. all Staatsbürger symbols,stressed Buchstaben und damit an Als Bit ist benutzt internally für ein Menge bei Dinge Shells Ich habe Ich habe beachte An PIPES -------------PIPES bekomme war durchgeführt benutze temporary RAM Files So du werde ist vorsichtig wenn spezifiziere ein RAM Erweiterung wie es kann zusammengefügt der vorübergehend Files Diese Files gelöscht sind an Fertigstellung bei der leite segment. Der File Namen benutzt sind vollständig einmalig sogar mit vielfach Shells laufe gleichzeitig Mein bevorzuge neues Funktionen ist der Tatsache diese du kann jetzt redirect zu und von und leite innere Kommandos Echo Heini RAM Röntgenaufnahme für Beispiel Ein anderer Ein anderer favorite:Echo Echo Speicher Shells Shells Zu accomplish diese neues Funktionen Ich vollständig re-wrote der Kommando Parser in execom.c Nein BCPL Programm werde ist output-append redirected >>) V Kommando PRE-PROCESSOR --------------------Preprocessing ist getan an der Kommando Zeile bevor es ist weitergegeben an zu ein innere oder äußere Routiene ^c where c ist ein Buchstabe ist converted zu diese kontrolliere Buchstabe So say L für kontrolliert $name where Name ist ein variabel Name Variabel Namen kann beinhaltet bei 0-9,a-z,A-Z,und unterstreichen (_). Der Inhalt bei der bestimmt variabel ist benutzt Wenn der variabel tue nicht tue nicht existiere Der specifier ist benutzt Diese ist wenn der variabel Ich beinhaltet Heini dann Ich Heini Wenn der variabel Ich tue nicht tue nicht existiere dann delimits Kommandos Echo Heini Echo Bezugspunkt ' ' (ein Spaces dem vom die Befehl auf die verließ Die Eingabein die Befehl auf die korrektDer aktuelles Shells implimentation benutzt temporary Files zu gelagert der Daten !!Führe aus Führe aus der vorher ausgeführt Kommando !nn (nn ist ein Anzahl Eingefügt der Geschichte Kommando numbered n (sehe Der Geschichte Kommando ! teilweise sucht backwards über der Geschichte Liste für für Kommando welche schaut der gleiche wie Teilweise und führe aus führe aus es Gebe ein Gebe ein erkläre Der Neustart bei der Zeile ist discarded (beachte \# Werde bei natürlich der erkläre Buchstaben besonderer Bedeutung über Kommando Zeile schriebe O Kommando Zeile kann ist upto 255 Buchstaben o Inserts und löscht sind verwaltet richtig Über vielfach Bildschirm Zeilen o Shells werde halte TrackDisk.Device bei der Zeile Breite werde der Fenster bekomme resized. Taste DEFINITIONS:Auf dem Laufenden Auf dem Laufenden Auf dem Laufenden Pfeil vorher Kommandos Gedrückt Pfeil Recall Kommandos verlassen Pfeil bewege Cursor Kommando Zeile Korrekt Pfeil """"" Shift-Up Pfeil bekomme gestartet bei Geschichte Shift-Down Pfeil "ende "" Shift-Left Pfeil bewegt Cursor ein Wort verlassen Shift-Right Pfeil """"korrekt ^A Toggle Betrieb ^D EOF (Ausgang Shells ^E Put Cursor an ende bei Text ^K Delete zu ende bei Zeile ^R Retype aktuelles Zeile ganz Zeile ^X Erase ganz Zeile Cursor an gestartet bei Text F - f10 Execute Kommando wenn variabel existieren F1 - F10 More Kommandos (Shifted f Tasten . Help Invokes helfe Kommando VII. Funktion Tasten Funktion Tasten jetzt eingefügt Text der aktuelles Position an der Kommando Zeile Sie vielleicht terminated mit ein m liefer zurück liefer zurück f1 würde ist ungültig shifted wo wie F1 ist shifted. Mehr bei Funktionen Taste bekomme ein voreingestellte Definition aber aber darf ist gewechselt $ setze f dir DF0: m Werde add der Text Dir DF0: Liefer zurück Liefer zurück zu der aktuelles Zeile $ setze f dir Würde nur add Dir du gekonnt dann gebe ein gebe ein DF0: Liefer zurück Liefer zurück VIII. Shells Kommandos Ersten zu gestartet Shells von ein CLI Shells [Ein [C Kommando Kommando wo Ein unbrauchbar Kommando Zeile schriebe Funktionen Diese ist nützliche für Wenn laufe Shells Über AUX ,notwendig wenn du sind laufe CONMAN. C allows Ausführung bei ein Kommando und dann Ausgang aus Shells Diese ist nützliche für laufe ein innere Shells Kommandos in der Hintergrund oder von ein äußere Anwendung z.B. Run Shells dir DF0: ;kopiere DF0: DF0: >nil:Echo "getan Wenn du Run Shells in der hintergrund ohne der C Shells Werde entdecke diese und beende Kommando Ausführung Innere Shells Kommandos vielleicht abreviated. Der ersten Argument ist der command-name.. hier ist in Ordnung wie Shells versucht zu führe aus führe aus es 1)Alias Liste ist searched für ein alias genau passe zusammen passe zusammen Name 2)Innere Kommandos Liste ist scanned für Kommando sogar teilweise passe zusammen passe zusammen Name (damit du kann für Beispiel say resident für resident wie auch immer wie auch immer wie auch immer du werde spezifiziere genug bei ein Kommando zu ist einmalig 3)ARP resident Liste ist scanned (du kann benutze Shells resident Kommando zu add/remove ein File in diese Liste 4)An diese Punkt Kommando ist supposed zu ist äußere (Diskette ,und ist searched bevor in aktuelles Verzeichnis dann in AmigaDOS Pfad in C ,und in Shells Pfad O werde passt der ! C DF0: &* all Files in Hauptverzeichnis bei DF0: aber frage confirmation für jede *.[co] all Files beende in C oder oder O ~*.[co] all Files Nicht beende in C normal in in Der folgende symbols sind nicht bis jetzt bis jetzt unterstützt von wild Karte expansions,aber sind accepted in sucht W (| )Oder passe zusammen passe zusammen # 0 oder mehr Zeit der Muster folgende Beispiele k#a matches ka,kaa,kaaa,usw. für ein Befehl(Gadget für die Eingabe eines Textes)verbargst ist Ergebnisseverbargst ist Die SekundeFormataus die Befehl aus ArgumenteIn irgendwelchePositioninderKommando(Gadget für die Eingabe eines Textes)überbenutzt aus eine variabelNameZu weitergegeben Argumente zu Gebe ein Gebe ein alias Name du werde bekomme der alias für diese Name Gebe ein Gebe ein alias Name du werde bekomme der alias für diese Name während mit alias"du bekomme ein Liste Liste bei ASET Gebrauch aset Name Wert Beispiel aset Zusammengefügt include:zusammengefügt setze ein variabel in ein Weg diese ist kompatibel kompatibel Aztec setze Kommando Diese ist vollständig unterschiedliche von Shells variabel einarbeitet das auf das Ist schließt Gebrauchschließt schließt die bestimmte Fileöffnete durch öffnest Sehe öffne und flist für mehr informiere kopiere CP)Gebrauch kopiere [[-d]File File Oder kopiere [-u]-d]file1 file2...fileN dir Oder kopiere -r]-u]-d]dir1 dir2...dirN dir Optionen -r recursive,copy all Unterverzeichnisse wie gut -u update,wenn neuer Version existiere an Ziel tue nicht tue nicht kopiere -d don't setze Ziel File Datum zu diese bei Quell Beispiel kopiere DF0: DF0: kopiere Files oder Verzeichnisse Wenn kopiere Verzeichnisse der R Option Muß ist bestimmt zu kopiere Unterverzeichnisse wie gut Anders nur Oben Stufe Files in der Quell Verzeichnis kopiert All Files werde ist angezeigt wie sie sind kopiert und directory's Angezeigt wie sie sind erzeugt Diese Ausgabe kann ist von redirecting zu nil:z.B. kopiere -r >nil:DF0: DF0: kopiere werde abort after aktuelles File an Control-C. kopiere von voreingestellte stellt der Datum bei der Ziel File zu diese bei Der Quell File Zu overide diese Funktionen benutze der -d switch. Ein anderer Ein anderer nützliche Option ist der -u update)Betrieb wo kopiere werde nicht kopiere irgendwelche Files welche existieren already in der Ziel Verzeichnis Wenn der Ziel File ist neuer oder Gleichheit zu der Quell File entschiedest das auf das bestimmtest das ErgebnisDie löschst Gebrauchlöschst PFileFileFileBeispiel lösche foo.txt test.c entferne lösche der bestimmt Files leFileFileBeispiel lösche foo.txt test.c entferne lösche der bestimmt Files entferne always lieferte zurück lieferte zurück errorcode 0. Du kann entferne leer Verzeichnisse Der '-r' Option Werde entferne non-empty Verzeichnisse von recursively removing all Unterverzeichnisse Verzeichnisse Du kann entferne delete-protected Files spezifiziere -p Option Wenn du spezifiziere irgendwelche wildcard löscht der Files werde ist gelistet wie Sie sind gelöscht Diese kann ist suppressed von redirecting zu nil:Dir (LS)Gebrauch dir -sdfcn]Pfad Pfad .. ]Beispiel dir DF0: Optionen S kurz vielfach 4)Spalte zeige an zeige an -d Liste Verzeichnisse nur F Liste Files nur nur tue nicht tue nicht wechsele Farben für Verzeichnisse nützliche zu Drucker N zeige an zeige an Namen nur zeigt an zeigt an ein Verzeichnis bei bestimmt Files Voreingestellte Ausgabe zeigt Datum protection,Block Größe Byte Größe und absolut Spaces benutzt Protections Flags zusammengefügt neues 3 Flags sehe unter schützt Files sind alphabetically sortiert ohne Fall sensitivity,und Verzeichnisse sind in wähle neu wähle neu Stift außer du benutze C Diskwechsel Gebrauch Diskwechsel Laufwerk Wie AmigaDOS Diskwechsel Echo Gebrauch Echo -n]StringGadget Beispiel Echo verborgen dort Resultate verborgen dort Echo der StringGadget gegeben Wenn -n switch gegeben nein neue Zeile neue Zeile ist appended. Sonst Gebrauch sonst Kommando Gebrauch wenn -f foo.c sonst Echo Nicht dort endif Sonst clause,muß gefolgt Wenn Angabe ENDIF Gebrauch endif Der ende bei ein wenn Angabe beachte wenn du liefer zurück liefer zurück von ein Script File mit unterminated IF's Und der letzter Wenn war false,Eingabebereitschaft werde ist gewechselt zu ein Unterstreichen '_')und nein Kommandos werde ist ausgeführt bis 'endif' ist geschieben Exec Gebrauch Exec Kommando Beispiel setze Utilities SysOp sytem/utilities Exec $util/make # würde nicht arbeite arbeite Exec Führe aus Führe aus der Kommando bestimmt Exec Kommando ist gleich zu Kommando nur du kann benutze Variablen zu spezifiziere Kommando Name Laufe falsch Gebrauch laufe falsch laufe falsch Fehler errorN Beispiel laufe falsch 205 212 Wie AmigaDOS laufe falsch laufe falsch druckt bestimmt Fehler Nachrichten FILENOTE Gebrauch filenote File Filenamen beachte setze AmigaDOS erkläre bei der bestimmt File Diese ist nicht sehr nützliche Seit in aktuelles Ausführung bei Shells File erklärt sind nicht gelistet In Verzeichnis aber es war damit leicht zu verwirkliche FLIST Gebrauch flist Lists der filenumbers bei Files geöffnet von öffne Sehe öffne und schließe für mehr informiere FLTLOWER Gebrauch fltlower Beispiel dir fltlower Oder fltlower LießMich Diese ist ein filter Kommando d.h. es liest von stdin und schreibt zu stdout. Der mehr natürlich Weg zu benutze es ist ein leite oder es kann ist redirected.Es ist Es ist absicht ist zu Konverter all alphabetic zu erniedrige Fall FLTUPPER Der gleiche bei fltlower,nur diese konvertiert zu obere Fall FOREACH Gebrauch foreach -v]varname Zeichenkette Kommando Beispiel foreach ich ein b c d Echo -n $i;echo \"gehackt Resultat ein gehackt b gehackt c gehackt d gehackt Zeichenkette ist kaputt auf dem Laufenden auf dem Laufenden auf dem Laufenden in Argumente Jede Argument ist plaziert in Der variabel 'varname' schalte und Kommando ausgeführt Zu führe aus führe aus Vielfach Kommandos Stelle sie in Anführungsstrichen Foreach ist besonders nützliche wenn interpreting weitergegeben Argumente in Ein alias. Z.B. foreach ich Bild viewilbm Ich assuming a.pic und b.pic in aktuelles der folgende Kommandos Werde geschehen viewilbm a.pic b.pic Flag V veranlaßt Argumente zu ist angezeigt jeder Zeit Kommando ist Ausgeführt Für immer Für immer Gebrauch für immer für immer Kommando Oder für immer für immer "Kommando Kommando Kommando command..." Der bestimmt Kommandos sind ausgeführt Über und Über again für immer für immer Ausführung stops wenn du geschlagen c Wenn der Kommandos liefer zurück liefer zurück mit ein Fehler Code FORLINE Gebrauch forline Veränderlichkeit Filenamen Kommando Oder forline Veränderlichkeit Filenamen Kommando Kommando Beispiel forline ich RAM vorübergehend Echo Zeile $_linenum=$i"Für jede ASCII Zeile bei File bestimmt Kommandos sind ausgeführt und Veränderlichkeit zeigt zu Zeile Inhalt Du kann prüfe System variabel _linenum Zu finde der Anzahl bei der Zeile jetzt lese FORNUM Gebrauch fornum V -v]n1 n2 Kommando Oder fornum -v]-s var n1 n2 step command Example :fornum -v x 1 10 $1 or :fornum -s x 10 1 -1 echo # counts backwards ausführt Kommando s)für all numerical Werte bei x zwischen n1 und n2. kwards ausführt Kommando s)für all numerical Werte bei x zwischen n1 und n2. Wenn mehr als als Kommando ist bestimmt oder Kommando ist redirected,Zusammengefügt Kommando s)in Anführungsstrichen Switch -v wortreich veranlaßt drucke bei progressive Nummern Switch -s allows du zu spezifiziere ein Schritt wenn diese ist negativ der antworte werde ist backwards.