Shell:如果目录不存在,如何创建目录?

时间:2017-03-07 19:24:03

标签: shell

我有以下目录结构:

/家庭/航空/飞机/ mach0p8

在mach0p8目录中执行以下shell命令:

mkdir ../convergence

如果我重复相同的命令,我会收到以下消息:

“mkdir无法创建目录'../convergence':文件存在”

这显然是有道理的,但是,我正在运行一个脚本,有时这个文件存在,有时它不存在。如果可能的话,我想避免上面的消息声明。有谁知道我可以做些什么来克服这个问题?我认为必须有一个shell命令,它将使用一些逻辑来确定文件是否存在,如果不存在则会创建它。我确信有一个更简单的方法,我不知道。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

mkdir -p ../convergence

从手册页:

  

-p, - 父母   如果存在则没有错误,根据需要创建父目录

答案 1 :(得分:0)

你可以像其他人一样回答。

mkdir -p ../convergence

或者你可以检查它的存在然后再制作一个。

[[ -d ../convergence ]] || mkdir ../convergence

首先是首选。