gpt4 book ai didi

shell - 仅当目录尚不存在时如何 mkdir ?

转载 作者:行者123 更新时间:2023-12-03 03:51:11 24 4
gpt4 key购买 nike

我正在编写一个 shell 脚本,以便在 AIX 上的 KornShell (ksh) 下运行。我想使用 mkdir 命令创建一个目录。但该目录可能已经存在,在这种情况下我不想做任何事情。因此,我想测试一下该目录是否不存在,或者抑制 mkdir 在尝试创建现有目录时抛出的“文件存在”错误。

我怎样才能最好地做到这一点?

最佳答案

尝试mkdir -p :

mkdir -p foo

请注意,这还将创建任何不存在的中间目录;例如,

mkdir -p foo/bar/baz

将创建目录foofoo/barfoo/bar/baz(如果它们不存在)。

像 GNU mkdir 这样的一些实现包括 mkdir --parents 作为更易读的别名,但这在 POSIX/Single Unix 规范中没有指定,并且在许多常见的情况下不可用macOS、各种 BSD 和各种商业 Unix 等平台,因此应该避免使用。

如果您希望在父目录不存在时出现错误,并且希望在不存在的情况下创建该目录,那么您可以 test首先判断目录是否存在:

[ -d foo ] || mkdir foo

关于shell - 仅当目录尚不存在时如何 mkdir ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/793858/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com