Pierwsza wersja | 3 listopada 1971 |
---|---|
Rodzaj | Narzędzie UNIX ( d ) |
chmod (skrót ch ange mod e ) jest wywołanie systemowe z UNIX ( standardem POSIX ) oraz odpowiedniej komendy, aby zmienić uprawnienia o pliku lub katalogu .
To polecenie pojawiło się po raz pierwszy w AT&T UNIX w wersji 1.
Użytkownik ma prawo do chmodowania pliku:
Opcje przekazane do polecenia chmod są oznaczone następująco:
chmod options modes fichiers
W przypadku pliku: chmod [u g o a] [+ - =] [r w x] nom_du_fichier
Zawartość katalogu (rekurencyjnie): chmod -R [u g o a] [+ - =] [r w x] nom_du_répertoire
chmodma wiele opcji, które mogą modyfikować wynik. Oto niektóre z tych opcji:
Dla każdego podanego pliku uprawnienia dotyczą właściciela pliku (kod „u” jak użytkownik ), grupy użytkowników pliku ( grupa podobna do „g” ) lub innych użytkowników („o” jak inni ). Aby zastosować zmiany do wszystkich naraz, używamy kodu „a” jak wszystkie :
Tryby można określić na dwa sposoby, za pomocą liter lub liczb ósemkowych . W przypadku listów istnieją operatory zmiany stanu +i -dodawania lub usuwania typu uprawnień do bieżących uprawnień oraz operator, =który je zastępuje. W przypadku ósemki musisz dodać liczby dla każdego typu właściciela.
Uprawnienia to (wartości ósemkowe w nawiasach):
Reprezentacja korespondencji dotyczącej praw | |||
---|---|---|---|
Prawo | Wartość alfanumeryczna | Wartość ósemkowa | Wartość binarna |
bez prawa | --- | 0 | 000 |
tylko wykonanie | --x | 1 | 001 |
tylko pisanie | -w- | 2 | 010 |
pisanie i występowanie | -wx | 3 | 011 |
tylko czytać | r-- | 4 | 100 |
przeczytaj i wykonaj | r-x | 5 | 101 |
czytanie i pisanie | rw- | 6 | 110 |
wszelkie prawa (odczyt, zapis i wykonywanie) | rwx | 7 | 111 |
Istnieją trzy powszechnie używane tryby specjalne: bit lepki (oznaczony jako t) oraz bity SETUID i SETGID (oznaczony jako s).
chmod istnieje w C standardowej biblioteki . Pełni tę samą funkcję co polecenie Unix.
int chmod(const char *path, int amode) ;Lub:
Różnica między chmod i fchmod polega na tym, że chmod przyjmuje ścieżkę do pliku jako argument (który jest czytelny dla człowieka, na przykład: /tmp/toto.txt ), podczas gdy fchmod przyjmuje deskryptor pliku jako argument.
chmod istnieje w bibliotekach Perla, aby zmienić uprawnienia listy plików. Drugi parametr musi być wartością ósemkową. Funkcja zwraca liczbę pomyślnie przypisanych plików.
$cnt = chmod 0644, 'fichier1', 'fichier2'; $cnt = chmod 0644, @liste;chmod istnieje w standardowej bibliotece PHP . Pełni tę samą funkcję, co polecenie systemu Unix i te same parametry, co funkcja C.
W MS-DOS i Windows narzędzie attribumożliwia zmianę niektórych atrybutów (odczyt, zapis, ukrywanie, system) plików, które nie są powiązane z właścicielem.
Pod Windows NT , caclsjest bardziej kompletna linia poleceń narzędzie równoważne chmodi chown .