mkdir bash 脚本中的多个子文件夹

mkdir multiple subfolders in bash script

我有以下脚本:

#!/bin/bash
path="/parentfolder/{child_1,child_2}"
mkdir -p $path
mkdir -p /parentfolder/{child_3,child_4}

运行 它会创建以下文件夹:

/parentfolder/{child_1,child_2}
/parentfolder/child_3
/parentfolder/child_4

如何让脚本创建以下文件夹结构:

/parentfolder/child_1
/parentfolder/child_2
/parentfolder/child_3
/parentfolder/child_4
path=`echo /parentfolder/{child_1,child_2}`

扩展需要命令才能正常工作。

不能在带引号的变量中使用大括号扩展;要么将大括号放在命令本身中,要么以不同方式分配变量。如果您需要将值放在变量中,使用数组似乎比较合适。

#!/bin/bash

paths=(/parentfolder/{child_1,child_2,child_3,child_4})
mkdir -p "${paths[@]}"