开发者

Shell script to test whether a directory exists and if not create it?

I am trying to create a script to detect whether a directory exists, and if it does not, to create it.

How can I do that?

I did some 开发者_如何学Cdigging and found a clue:

test -d directory

...will return true or false depending on whether the directory exists or not.

But how do I tie this together with mkdir?


mkdir -p $directory should do what you want. The -p option will create any necessary parent directories. If $directory already exists as a directory, the command does nothing, and succeeds. If $directory is a regular file, it will remain untouched, and the command will fail with an appropriate error message.

Without the -p option to mkdir, the test ... || mkdir ... strategy can fail if $directory contains a '/', and some component of that path doesn't already exist. The test is superfluous anyway, since mkdir does the same test internally.


test ... || mkdir ...
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜