Dieses kurze Tutorial beschreibt, wie Sie Dateien kopieren und gleichzeitig den Besitz und die Berechtigungen über die Befehlszeile in Unix-ähnlichen Betriebssystemen ändern. Normalerweise verwenden wir den Befehl „cp“, um Dateien von einem Ort zum anderen zu kopieren. Dann verwenden wir die Befehle „chmod“ und „chown“, um die Berechtigungen bzw. den Besitz einer Datei zu ändern. Wir können jedoch alle diese Aufgaben in einem Einzeiler kombinieren , und erhalten immer noch das gleiche Ergebnis, anstatt die drei aufeinanderfolgenden Befehle auszuführen. Dies kann hilfreich sein, wenn Sie dies regelmäßig oder innerhalb eines Skripts tun möchten.
Dateien kopieren und gleichzeitig Eigentum und Berechtigungen ändern
Sehen Sie sich das folgende Beispiel an.
Um Dateien zu kopieren und Berechtigungen und Eigentumsrechte zu ändern, gehen wir normalerweise wie folgt vor:
$ cp /dir1/file1 /dir2
$ chmod 775 -R /dir2
$ chown -R newowner:newgroup /dir2/file1
Sie müssen jedoch nicht drei Befehle für diese einfache Aufgabe verwenden. Wir können dies mit einem einzigen Befehl tun. Hier wird "installiert" Befehl ist praktisch.
Ich dachte, der Befehl "install" soll Dinge installieren. Aber ich habe mich getäuscht! Der Befehl "installieren" wird verwendet, um Dateien in ein Ziel Ihrer Wahl zu kopieren und Attribute festzulegen. Es ist Teil von GNU Coreutils, das mit allen Linux-Distributionen vorinstalliert ist.
Lassen Sie mich nun zeigen, wie Sie die Berechtigungen und den Besitz einer Datei während des Kopierens ändern.
$ sudo install -C -m 775 -o sk -g ostechnix /dir1/file1 /dir2
Der obige Befehl kopiert die Datei /dir1/file1 nach /dir2 , ändern Sie die Berechtigungen der Datei auf 775 , den Besitzer fragen , und die Gruppe zu ostechnix .
Lassen Sie uns den obigen Befehl aufschlüsseln und sehen, was jeder Teil des Befehls tut.
- -C, (--compare) :Vergleicht jedes Paar von Quell- und Zieldateien und ändert in einigen Fällen das Ziel überhaupt nicht.
- -m, (--mode) :Legt den Berechtigungsmodus fest (wie in chmod).
- -o, (--owner) :Benutzerbesitz festlegen.
- -g, (--group) :Gruppenbesitz festlegen.
Weitere Einzelheiten finden Sie in den Manpages.
$ man install
Empfohlene Lektüre:
- So behalten Sie Eigentums- und Dateiberechtigungen beim Kopieren von Dateien oder Verzeichnissen bei
- ExplainShell – Finden Sie heraus, was jeder Teil eines Linux-Befehls tut
Und das ist alles. Hoffe das hilft.