ファイルのユーザー/所有者のアクセス許可をグループのアクセス許可にコピーするにはどうすればよいですか?
たとえば、アクセス許可が755の場合、775になります。
明確化:755-> 775 123-> 113 abc-> aac
ディレクトリ内のすべてのファイルに対してこれを再帰的に行うことができればボーナスです。
(つまり、ファイルごとに所有者のアクセス許可がグループのアクセス許可にコピーされます。各ファイルには異なるアクセス許可が設定されている場合があります。)
ファイルのユーザー/所有者のアクセス許可をグループのアクセス許可にコピーするにはどうすればよいですか?
たとえば、アクセス許可が755の場合、775になります。
明確化:755-> 775 123-> 113 abc-> aac
ディレクトリ内のすべてのファイルに対してこれを再帰的に行うことができればボーナスです。
(つまり、ファイルごとに所有者のアクセス許可がグループのアクセス許可にコピーされます。各ファイルには異なるアクセス許可が設定されている場合があります。)
回答:
g=u
グループ権限をユーザー権限と同じにするために使用できます
ls -l file
-rw------- 1 user users 0 Jun 27 13:47 file
chmod g=u file
ls -l file
-rw-rw---- 1 user users 0 Jun 27 13:47 file
そして再帰的に
chmod -R g=u *
またはいくつかのファイル仕様
find /patch/to/change/perms -name '*.txt' -exec chmod g=u {} +
chmodのmanページはあなたの友達です。
g=u
トリックは、退屈な管理の時間を節約してくれました。+1があります;-)
chmod -R ag=u ${path_to_directory}
人々が言ったように、ファイルのパーミッションを変更することは危険です。大きな力には大きな責任が伴い、それはすべてシザです。これは私の答えです:
ファイル/ usr / bin / otog:
#!/bin/sh
f=$1
p=`stat -c "%a" $f`
chmod ${p:0:1}${p:0:1}${p:2:1} $f
使用例:
find . -exec otog {} \;
statを使用して数値の許可を取得し、chmodを使用して許可を変更します。
PS:これを行うより良い方法については、Iainの答えをご覧ください!
chmod
本当に、本当に危険なコマンドではありません。と比較してrm
、私は、または、またはrsync --delete
他のいくつかを意味します。
まず、あなたの権利をリストする必要があります。
ls -l /your_directory/
-rwxr-xr-x 1 57 Jul 3 10:13 file1
-rwxr-xr-x 1 57 Jul 3 10:13 file2
結果を数値の許可に変換するには、R = 4、W = 2、X = 1を使用します。
したがって、この2ファイルでは、許可は755です。
権利を取得したら、chmodコマンドを使用して、必要な方法で権利を変更する必要があります。
chmod 775 /your_directory/
このコマンドは、ディレクトリの権限のみを変更し、内部のファイルの権限は変更しません。
内部の権限も変更する場合は、次のコマンドを実行します。
chmod 775 /your_directory/ -fR
-fRは再帰を強制します。(適用する権利とディレクトリ内のファイルが確実な場合にのみ使用してください。)
file1の権限のみを変更する場合:
chmod 775 /your_directory/file1
そして、クッキーが崩れる方法!
/!\注意してください。このコマンドを誤用すると、OSのすべての権限が破壊され、誤動作が発生する可能性があります。/!\
PS:見た目が chmodコマンドについて詳細な情報を検索します。
これがお役に立てば幸いです。