将多个用户输入转换为 mkdir 参数以创建多个文件夹 - Bash 脚本

Convert multiple user inputs as mkdir parameter to create multiple folders - Bash script

我想使用用户输入创建多个文件夹。例如,如果用户写了 java,python,react,那么我要查找的结果分别是文件夹 javapythonreact。但是会发生什么,创建了一个名为 {java,python,react} 的文件夹。逗号不再被识别。

## The code
read -p "External projects: " EXTERNAL_PROJECTS 

mkdir -p {$EXTERNAL_PROJECTS}

它不起作用,因为大括号扩展是在参数扩展之前执行的。即参数EXTERNAL_PROJECTS展开后,结果字符串不再重新扫描大括号展开。解决这个问题的一种方法是使用数组:

IFS=',' read -r -p "External projects: " -a EXTERNAL_PROJECTS

mkdir -p "${EXTERNAL_PROJECTS[@]}"