数値を使ったchmod
CoddyのTerminalジャーニー「基礎」セクションの一部。レッスン 55/82。
chmod コマンドを使用すると、ファイルの権限を変更できます。使用方法の一つに数値モードがあり、各権限が数値で表されます。
各権限には値があります。読み取りは 4、書き込みは 2、実行は 1 です。これらの値を加算して、各ユーザーカテゴリの1桁の数字を作成します。たとえば、読み取り + 書き込み + 実行 = 4 + 2 + 1 = 7 です。
| 数値 | 権限 | 意味 |
|---|---|---|
| 7 | rwx | 読み取り + 書き込み + 実行 |
| 6 | rw- | 読み取り + 書き込み |
| 5 | r-x | 読み取り + 実行 |
| 4 | r-- | 読み取り専用 |
| 0 | --- | 権限なし |
所有者、グループ、その他のユーザーの権限を設定するために、3桁の数字を組み合わせます。例:
chmod 755 script.shこれは所有者にrwx(7)、グループにr-x(5)、その他のユーザーにr-x(5)を設定します。一般的な権限である644では、所有者に読み取りと書き込みのアクセス権が与えられ、その他のユーザーはファイルを読み取ることしかできません。
チャレンジ
簡単実行可能にする必要がある deploy.sh という script ファイルがあります。ただし、所有者には実行権限を付与し、グループとその他のユーザーには読み取り権限のみを付与します。
数値モードで chmod を使用し、deploy.sh の権限を次のように設定してください:
- 所有者:読み取り、書き込み、実行(
7) - グループ:読み取りのみ(
4) - その他のユーザー:読み取りのみ(
4)
権限を設定した後、ls -l deploy.sh を使用して変更を確認してください。
出力には、ファイルの権限文字列 -rwxr--r-- が表示されるはずです。
ヒント: 必要な3桁の数字は
744です。chmod 744 deploy.shに続けてls -l deploy.shを実行すると、更新された権限が表示されます。
自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Terminalプレイグラウンド