W celu zmiany uprawnień do pliku wiem, że mogę użyć chmod. Aby zmienić właściciela grupy, mógłbym użyć chgrp. Jeśli jednak chcę jednocześnie zmienić zarówno uprawnienia, jak i właściciela, którekolwiek polecenie, którego mógłbym użyć w systemie Linux?
Na przykład istnieje plik z tym uprawnieniem i właścicielem:
-rw-r--r--+ 1 raymondtau staff 0 May 8 16:38 WantToChangeThisFile
A teraz chcę to zmienić na:
---x-w--wx+ 1 raymondtau admin 0 May 8 16:38 WantToChangeThisFile
Wiem, że mógłbym użyć tego polecenia: chmod 123 WantToChangeThisFile && chgrp admin WantToChangeThisFile
ale chcę wiedzieć, czy istnieje jakiś dobry sposób, aby to zrobić.
ch
.Jeśli chcesz także gdzieś skopiować plik (np. Jego ostateczne miejsce docelowe), możesz rzucić okiem na
install
polecenie:install -m 0777 -o root $sourcefile $destinationfile
źródło
Ważne jest użycie odpowiedniego narzędzia do zadania w * nix, ale w rzeczywistości powtarzanie tej samej ścieżki w każdym łańcuchowym poleceniu wygląda głupio. Zamiast tego powinieneś naprawdę używać zmiennych Bash, aw mniejszych skryptach, szczególnie korzystaj z
$_
.Twoje polecenie brzmiałoby:
chmod 123 WantToChangeThisFile && chgrp admin $_
ALT +. robi to samo, wyciągając ostatnio używany argument w bieżącej powłoce.
źródło
Rsync jest przydatny w tym przypadku:
Z dokładnej instrukcji (TM)
--chown = USER: GROUP proste mapowanie nazwy użytkownika / grupy
--chmod = CHMOD wpływa na uprawnienia do plików i / lub katalogów
Na przykład chcesz chmod / mnt / lala / lala4000 / „ugo = rX” i zmienić „foo.bar”
rsync --chmod = ugo = rX --chown = foo: bar -rvtpolgh / mnt / lala / lala4000 / / mnt / lala / lala4000 /
To rekurencyjnie chown i chmod reż.
źródło
Możesz osiągnąć suchy cel dzięki długiemu
rsync
dowodzeniuźródło
Możesz zrobić,
chown username:groupname file ...
aby zmienić oba jednocześnie. Zmienia dwa pola w tej samej (inode) strukturze, więc ich połączenie pozwala zaoszczędzić dwa wywołania systemowe (jedno do odczytu bieżących wartości i jedno do ustawienia zmodyfikowanych vaules).źródło
chown
zmienia tylko właścicieli. W jaki sposób zmienia to uprawnienia w tym samym czasie, gdy zażądano OP? Uwaga Przykład OP zawierachmod
również.źródło