在单个命令中创建目录树

<![CDATA[

怀习惯1示例:

~ $ mkdir tmp

~ $ cd tmp

~/tmp $ mkdir a

~/tmp $ cd a

~/tmp/a $ mkdir b

~/tmp/a $ cd b

~/tmp/a/b/ $ mkdir c

~/tmp/a/b/ $ cd c

~/tmp/a/b/c $

使用 mkdir 的 -p 选项并在单个命令中创建所有父目录及其子目录要容易得多。但是即使对于知道此选项的管理员,他们在命令行上创建子目录时也仍然束缚于逐步创建每级子目录。花时间有意识地养成这个好习惯是值得的:

好习惯 1 的示例:使用一个命令来定义目录树

~ $ mkdir -p tmp/a/b/c

您可以使用此选项来创建整个复杂的目录树(在脚本中使用是非常理想的),而不只是创建简单的层次结构。例如:

好习惯 2 的另一个示例:使用一个命令来定义复杂的目录树

~ $ mkdir -p project/{lib/ext,bin,src,doc/{html,info,pdf},demo/stat/a}

过去,单独定义目录的唯一借口是您的 mkdir 实现不支持此选项,但是在大多数系统上不再是这样了。IBM、AIX®、mkdir、GNU mkdir 和其他遵守单一 UNIX 规范 (Single UNIX Specification) 的系统现在都具有此选项。