使用大括号扩展创建多个目录的正确命令是什么?

Eri*_*ick 7 command-line bash

我可以使用以下命令创建多个目录吗?:

mkdir ~/backups/freemem/{backups/diskuse,backups/openlist,backups/freedisk}
Run Code Online (Sandbox Code Playgroud)

或者

mkdir ~/backups/freemem/{/backups/diskuse/,/backups/openlist/,/backups/freedisk/}
Run Code Online (Sandbox Code Playgroud)

mur*_*uru 17

假设~/backups/freemem/backups是一个现有目录,两者都可以工作,因为~/backups/freemem//backups/diskuse/和就其~/backups/freemem/backups/diskuse而言是相同的mkdir。但为什么不简化呢?

mkdir ~/backups/freemem/backups/{diskuse,openlist,freedisk}
Run Code Online (Sandbox Code Playgroud)

如果~/backups/freemem/backups还不存在,那么两者都不起作用。您需要mkdir -p在层次结构中创建缺失的目录。