Weiter: CDELETE
Zurück: CASE
Hinauf: Die Befehle im einzelnen
CCOPY [(l1 [l2])] c1 [c2] COLUMN [+|-]col [LINE [+|-]num] [n]
CC
CCOPY steht für column copy, kopiert also Spalten
einer Zeile und sollte nicht mit dem Befehl COPY
verwechselt werden, der Zeilen kopiert.
kopiert im Satz der aktuellen Zeile die Spalte 5 in die Spalte 20
kopiert die Spalten 5 bis 10 in die Spalten 20 bis 25. Beachte, dass
beim Ziel nur die Anfangsspalte angegeben wird, weil die Anzahl ja
bereits bei den Quellspalten festgelegt wurde. Das Kopieren geht so vor
sich, dass zunächst die Spalten jenseits des Zielbereichs um den nötigen
Betrag nach rechts geschoben werden und dann die Quellspalten in den
Zielbereich kopiert werden. Das ist dasselbe Verfahren wie bei dem
Befehl COPY, der auch keine Zeilen überschreibt, sondern
dazwischen einfügt.
Quell- und Zielbereich dürfen sich nicht überlappen. Falls doch, so
erhältst du die Meldung
Quell- und Zielbereich überlappen
Anstelle einer absoluten Zielspalte kannst du auch eine relative
angeben, indem du die Spaltenangabe bei COLUMN mit einem
Vorzeichen versiehst:
ist dasselbe wie oben.
Bisher beschränkten sich alle Beispiele auf die aktuelle Zeile. Durch
Angabe einer Anzahl als letzter Parameter kannst du wie üblich den
Befehl in n aufeinanderfolgenden Zeilen ab der aktuellen
ausführen lassen:
führt den Befehl in 7 Zeilen aus. Hat der workfile zu wenig
Zeilen, so erfolgt die Meldung
Mit der beschriebenen Methode beginnt die Ausführung immer in der
aktuellen Zeile. Alternativ kannst du die gewünschten Zeilen auch in
Klammern als ersten Parameter angeben:
ccopy (500 1200) 5 10 c20
Dies führt CCOPY in den Zeilen 500 bis 1200 aus,
unabhängig davon, wo die aktuelle Zeile ist. Die angegebenen
Zeilennummern dürfen auch symbolische sein (t,
f, p, *
, n, l, b,
s). Gibst du nur 1 Zeilennummer an, so wird die zweite
gleich der ersten angenommen. Bitte achte auf die Klammern.
Nun zum letzten Parameter von CCOPY. Bisher waren die
Zielspalten in der selben Zeile wie die Quellspalten. Du kannst aber
auch die Zielzeilen separat angeben:
Dies kopiert die Spalte 5 bis 10 der aktuellen Zeile in die Spalten 20
bis 25 der Zeile 700.
Wie bei COLUMN kannst du auch bei LINE
durch Voransetzen eines Vorzeichens eine relative Zielzeile angeben:
Gibt es die angegebene Zeile nicht, so erhältst du die Meldung
Selbstverständlich kannst du auch noch die (beiden alternativen) Angaben
über die Anzahl der betroffenen Zeilen hinzufügen:
ccopy (500 b) 8 column 9 line 000400
Bitte beachte, dass du keine Zielzeile angeben kannst, die es (noch)
nicht gibt. Wenn du also etwas hinter die letzte workfile-Zeile
kopieren willst, musst du die Zielzeile vorher (leer) erstellen.
Mit CCOPY lassen sich ganze Rechtecke des
workfiles an eine andere Stelle kopieren.
Weiter: CDELETE
Zurück: CASE
Hinauf: Die Befehle im einzelnen