L i n u x - S c h u l e
|
|
Homepage | Server | Linux-Clients | Win9x-Clients | WinNT-Clients | Win3.11-Clients | Dos-Clients | Utilities |
- Shell Scripte
- Einstellen des Standardeditors
- Dateien in Kleinschreibung um wandeln
- Download im Hintergrund
Shell Scripte ("Batch-Dateien")
Ein Shell Script beginnt immer mit folgender Zeile:#!/bin/shDadurch wird dem System mitgeteilt, welcher Interpreter die folgenden Befehle ausführen soll. Scripte, die laufende Meldungen anzeigen, können mit [CTRL] + C abgebrochen werden.
Beispiele:#!/bin/sh # Dateiname: /usr/bin/slog # Funktion: zeigt laufen die Meldungen von /var/log/messages # wird mit [STRG] + [C] abgebrochen tail -f /var/log/messages #EOF#!/bin/sh # Dateiname: copieren # Funktion: Kopiert eine Datei foo.dat aus /root/tmp in alle # Homeverzeichnisse von Schülern # und wechselt die Besitzrechte auf den Schüler for i in `cat /etc/passwd | grep :102: | cut -d: -f1` do cp /root/tmp/foo.dat /home/$i chown $i.schueler /home/$i/foo.dat done exit 0 #EOF
Einstellen des Standardeditors
Viele Anwender kommen mit dem Standardeditor unter Unix, dem vi, nicht klar. Um sich z.B. joe als Standardeditor einzustellen, muß dei Datei /etc/profile geändert werden. Dort kann nach der ersten Zeile eingefügt werden:
export EDITOR=/usr/bin/joe
Ein paar Tips zum vi dürfen aber trotzdem nicht fehlen :-)
Nach dem Öffnen befindet sich vi im Kommandomodus, nach Drücken der Taste i wechselt er in den Eingabemodus. Hier funktioniert auch die [ENTF] Taste wie gewohnt.
Der Eingabemodus wird mit [ESC] verlassen.
Abgespeichert wird durch Eingabe von :wq (der Doppelpunkt gehört dazu!)
Möchte man einen Buchstaben löschen, geschieht dies im Kommandomodus durch Drücken der Taste d und der Leertaste, eine ganze Zeile löscht man mit dd.
Dateien in Kleinschreibung umwandeln
Manchaml ist es notwendig, einzelne Dateien oder ganze Verzeichnisse von Groß- in Kleinschreibung um zuwandeln (z.B. wenn man SELFTHTML von einer CD auf die Festplatte kopiert, um es im Intranet zugänglich zu machen).
Mit dem "Midnight Commander (mc)" geht das ganz einfach:Alle dateien + Verzeichnisse markieren
F6 (umbenennen/bewegen)
von: *
nach: \L*
[x] shell pattern
[x] Unterverzeichnisse
Download im Hintergrund per Shellscript
Aus einer Mail von Gisbert Friege in der schan-user Liste:
schreibe ( unter Linux : mit joe oder mcedit oder vi ! und kein copy-paste aus dieser Mail wegen der anderen Zeilenumbrüche bei Unix ! ) foglende Zeilen in eine Datei mit dem Namen "getArktur":#! /bin/bash ftp -n <<+ open marvin.sn.schule.de user anonymous GNeubauer@bigfoot.de cd pub/linux/Image bin get ods32t10.raw bye + # Ende von getArktur Stelle dann erstmal fest, ob dort in dem Verzeichnis, in dem Du das Image ablegen willst, gnug Platz ist . Kopiere getArktur in dieses Verzeichnis. Wechsle ( mit cd auf der Kommandozeile ) in dieses Verzeichnis. Gib auf der Kommandozeile ein: at 21:15 < getArktur Jetzt kannst Du Dich beruhigt ausloggen ( Strg D ), den Rest erledigt der at-Dämon. Das hat bei mir schon zweimal einwandfrei geklappt. Das dürfte auch wesentlich schneller gehen als mit der ftp-Funktion von mc.
Nach oben
© Thomas Litsch, zuletzt aktualisiert 30.04.2000, Email: thomas.litsch@linux-schule.de