Bewegung für Ihre Dateien
cp und mv
Lieber verschieben
Mit der Zeit sammeln sich in den eigenen Home-Verzeichnissen jede Menge einsame Dateien an. Damit man nicht in einem unübersichtlichen Chaos dauernd nach etwas suchen muss, legt man sich am besten Unterverzeichnisse an (mkdir neuesverzeichnis) und sortiert die Files. Hier kommt das Kommando mv (englisch "move") ins Spiel: Mit mv datei verzeichnis wird die angegebene datei in das entsprechende verzeichnis bewegt. Auch hier gibt es wie bei cp die Option -i (--interactive). Liegt im Ziel-Directory bereits eine Datei mit gleichem Namen, wird beim Aufruf eine Warnung ausgegeben:
huhn@asteroid:~$ mv -i datei verzeichnis mv: »verzeichnis/datei« überschreiben?
Sie können mv auch dazu verwenden, eine Datei umzubenennen: Liegt wie im Beispiel oben schon ein File mit dem Namen datei in verzeichnis, können Sie diese mit mv datei datei1 (ausgeführt in diesem Verzeichnis) zunächst aus dem Weg räumen. Selbstverständlich lassen sich auch ganze Verzeichnisse verschieben; seit einiger Zeit sogar über Partitionsgrenzen hinweg.
Backups nicht vergessen!
Genau wie cp kennt auch mv die Option -b (--backup). Hier gibt es noch mehr interessante Features zu entdecken: So kann man beispielsweise nicht nur das Backup-Suffix (Standard ist die Tilde ~) verändern, sondern auch die Sicherungskopien durchnumerieren lassen.
huhn@asteroid:~$ mv -b -V t datei1 neuedatei huhn@asteroid:~$ mv -b -V t datei2 neuedatei huhn@asteroid:~$ ls neuedatei.~1~ neuedatei.~2~
Hier ist -V die Kurzoption für --version-control, und das t (Langform numbered) steht für durchnumerierte Backups. Ein eigenes Backup-Suffix können Sie als Umgebungsvariable setzen; in der bash definieren Sie das Standard-"Anhängsel" an Sicherungskopien SIMPLE_BACKUP_SUFFIX:
huhn@asteroid:~$ export SIMPLE_BACKUP_SUFFIX="-backup"
Eine Datei, die Sie mit mv -b verschieben, heißt jetzt beispielsweise datei-backup. Wenn Sie lieber mehrere durchnumerierte Sicherungskopien aufbewahren möchten, tippen Sie:
huhn@asteroid:~$ export VERSION_CONTROL=t
Vorsicht: Das gesetzte SIMPLE_BACKUP_SUFFIX kommt jetzt nicht mehr zum Einsatz, Backups werden wieder durchnumeriert. Möchten Sie diese Einstellungen dauerhaft verwenden, tragen Sie einfach den entsprechenden export-Aufruf direkt in die .bashrc ein. Für den Fall, dass Sie die Variable lieber wieder loswerden möchten, verwenden Sie das Kommando unset, also z. B. unset VERSION_CONTROL. Um die Aufräumarbeiten im /home komplett zu machen, lesen Sie in der nächsten Ausgabe, wie man mit dem Kommando rm die ganzen "Backupleichen" in den Datenkeller räumt.
Glossar
Alias
Um ein Programm (mit seinen Optionen) unter einem anderen, vielleicht kürzeren oder prägnanteren Namen aufrufen zu können, gibt es die Möglichkeit, mit dem Befehl alias eine "Abkürzung" zu definieren: alias cp='cp -i'. Dauerhaft wird das allerdings erst, wenn man dies in die Konfigurationsdatei der eigenen Shell schreibt.
symbolischen Link
Ein Verweis auf eine andere Datei, der von Anwendungsprogrammen wie eben diese Datei behandelt wird. Wenn die Datei, auf die ein Symlink verweist, gelöscht wird, zeigt der Link ins Leere. Symlinks werden mit ln -s erzeugt.
owner
Der Eigentümer einer Datei, also der Benutzer, dem sie gehört.
group
Neben den Benutzern kennt Unix/Linux auch das Konzept der Gruppen; analog gehört auch jede Datei einer Gruppe. Die Zugriffsrechte von Besitzer und Gruppe auf Dateien regelt man über die permissions.
permissions
Die Zugriffrechte auf eine Datei gliedern sich in die Rechte des Besitzers, der Gruppe und aller sonstigen Benutzer auf, wobei jeweils Rechte für das Lesen (Read, r), das Schreiben (Write, w) und das Ausführen (eXecute, x) vergeben werden.
timestamp
Unix-Dateisysteme verwalten für eine Datei verschiedene Datumseinträge, z. B. die Zeit des letzten Zugriffs oder der letzten Änderung. Gerade für Backups oder Sicherungskopien ist es wichtig, den Zeitstempel der Originalzeit (z. B. den der letzten Modifikation) zu behalten, bevor man vielleicht ein falsches File weiter bearbeitet.
umask
Beeinflusst die Rechte, mit denen neue Dateien erzeugt werden: umask gibt an, welche Zugriffsrechte auf keinen Fall gesetzt werden sollen, wenn eine neue Datei erzeugt wird. Bestimmte Dateien werden im Modus 777 (für jeden alle Rechte), Textdateien hingegen mit dem Modus 644 (für jeden Lese- und Schreibrecht) erzeugt. Wenn eine Datei also neu geschrieben wird, wird von dem entsprechenden Modus der umask-Wert gewissermaßen abgezogen. Die Systemvariable umask kann mit dem Kommando umask wert gesetzt werden, z. B. also umask 022 (das ist in der Regel der Standardwert). Wird jetzt eine Textdatei erzeugt, bekommt sie den Modus 666 - 022, also 644 (-rw-r--r--). Das Kommando umask ohne Argument liefert den augenblicklichen Wert der Variable.



