我想在 bash 脚本中创建一个复杂的目录结构,我的印象是以下内容会起作用:
mkdir -p tmpdir/{trunk/sources/{includes,docs},branches,tags}
这将创建:
tmpdir
________|______
| | |
branches tags trunk
|
sources
____|_____
| |
includes docs
但是,当我运行我的脚本时,我最终得到:
tmpdir
|
trunk
有没有一种快速简便的方法可以做到这一点,还是我必须求助于
mkdir -p tmpdir/trunk/sources/includes
mkdir -p tmpdir/trunk/sources/docs
mkdir -p tmpdir/branches
mkdir -p tmpdir/tags
最佳答案
将 shebang 更改为
#!/bin/bash
使用 bash 运行脚本,因为它支持大括号扩展。
问题是您使用的 shell 不支持它。您的 /bin/sh
不指向 /bin/bash
,而是指向类似 /bin/dash
的内容。
关于linux - 一次创建一个完整的目录树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17674406/