mkdir -p /path/to/something
上記のコマンドはいつゼロ以外の終了状態で終了しますか?
これは、コマンドを実行する前にファイル(またはディレクトリ?)が存在せず、コマンドがそのファイルをディレクトリとして生成できない場合にのみ/path/to/something
発生しますか?
man mkdir
説明する
-p, --parents
no error if existing, make parent directories as needed
ありがとうございます。
答え1
たとえば、前の回答を詳しく説明します。
おそらく、システムフォルダ内にフォルダを作成しようとしたとき:
ubuntu:~$ mkdir /proc/test
mkdir: cannot create directory ‘/proc/test’: No such file or directory
ubuntu:~$ mkdir -p /dev/null/test
mkdir: cannot create directory ‘/dev/null’: Not a directory
または、古いフォルダに対する権限がない場合:
ubuntu:~$ mkdir -p /root/test
mkdir: cannot create directory ‘/root’: Permission denied
フォルダに同じ名前のファイルがある場合でも失敗します。
ubuntu:~$ touch /tmp/test
ubuntu:~$ mkdir -p /tmp/test
mkdir: cannot create directory ‘/tmp/test’: File exists
答え2
~からhttps://www.gnu.org/software/coreutils/manual/html_node/mkdir-invocable.html#mkdir-inspiration:
An exit status of zero indicates success, and a nonzero value indicates failure.
失敗はディレクトリを作成する必要がありますが、操作が失敗したことを意味します。