我想在bash脚本中创建一个复杂的目录结构,并认为以下内容可行:
mkdir -p tmpdir/{trunk/sources/{includes,docs},branches,tags}
Run Code Online (Sandbox Code Playgroud)
这将创建:
tmpdir
________|______
| | |
branches tags trunk
|
sources
____|_____
| |
includes docs
Run Code Online (Sandbox Code Playgroud)
但是,当我运行我的脚本时,我最终得到:
tmpdir
|
trunk
Run Code Online (Sandbox Code Playgroud)
有没有一种快速简便的方法来做到这一点,或者我将不得不诉诸
mkdir -p tmpdir/trunk/sources/includes
mkdir -p tmpdir/trunk/sources/docs
mkdir -p tmpdir/branches
mkdir -p tmpdir/tags
Run Code Online (Sandbox Code Playgroud)
Grz*_*Żur 15
将shebang改为
#!/bin/bash
Run Code Online (Sandbox Code Playgroud)
使用bash运行脚本,因为它支持大括号扩展.
问题是您使用的是不支持它的shell.你/bin/sh没有指出,/bin/bash但有点像/bin/dash.
https://wiki.ubuntu.com/DashAsBinSh#A.7B