浅谈Linux中的mkdir -p

mkdir 是一个用于创建目录(目录树)的 Unix 和 Linux 命令。-p 选项允许创建一个目录和它不存在的父目录。换句话说,-p 选项确保了指定的整个目录路径都会被创建。

基础用法

如果你只是运行 mkdir new_directory,这个命令会尝试在当前目录中创建一个叫做 new_directory 的新目录。如果当前目录中已经有一个同名目录,或者由于某些其他原因(例如权限问题)导致目录不能被创建,该命令会失败。

-p 选项的用途

当使用 -p 选项时,mkdir 会尝试创建所有指定的父目录,并不会因为这些目录已经存在而出错。

例如:

mkdir -p dir1/dir2/dir3/dir4

这个命令会创建一个 dir4 目录,并确保它的父目录 dir3dir2dir1 也存在。如果这些目录中的任何一个不存在,mkdir 会创建它。

错误处理

如果目录已经存在,使用 -p 选项的 mkdir 命令不会报错,它会静默地成功。这在脚本中是非常有用的,因为可能不确定目录是否已经存在,但需要确保它存在以便进行其他操作。

权限

mkdir -p 也会考虑到文件系统的权限。如果没有足够的权限创建目录,该命令会失败并返回一个非零的退出状态。

示例

假设想在一个嵌套的目录结构中存储一些文件,路径如 ./files/images/jpg。可以使用以下命令一次性创建所有需要的目录:

mkdir -p files/images/jpg

如果 filesfiles/imagesfiles/images/jpg 任何一个目录已经存在,该命令都会成功,并确保完整的目录路径被创建。

你可能感兴趣的:(Linux,linux)