utte

mkdir ディレクトリを作成する

mkdir [オプション] ディレクトリ...

試してみる

主なオプション

-p途中のディレクトリも作る。既にあってもエラーにしない
-m モード作成するディレクトリの権限を指定する
-v作成したディレクトリを表示する

解説

途中のディレクトリがないとき

mkdir a/b/c のとき、a/b がなければ「No such file or directory」のエラーになります。-p(parents)を付けると、必要な親ディレクトリも含めてすべて作られます。

既存のディレクトリ

既にあるディレクトリを mkdir で作ろうとすると、「File exists」のエラーになります。-p を付けるとエラーにならないので、スクリプトで「なければ作る」ために使えます。

権限

作成したディレクトリの権限は、標準では 777 から umask の値を引いたものになります。umask が 022 なら 755 です。-m で指定すると、umask に関係なく指定した権限になります。

実行権限の意味

ディレクトリでは、実行権限(x)は「中に入れる」ことを意味します。権限を 600 などにするとファイルが読めなくなるので、ディレクトリの権限は 755 や 700 のように、x を含めるのが普通です。

このコマンドを使う問題

  1. mkdirでディレクトリを作る
  2. ワイルドカードで複数のファイルをまとめて移動する
  3. tarアーカイブから特定のファイルだけを取り出す
  4. SSHの公開鍵をauthorized_keysに登録する

関連するコマンド

LinuC 101の出題範囲