【发布时间】:2010-10-28 15:51:00
【问题描述】:
在 Linux 中,mkdir -p 创建一个文件夹树。
在 Windows 中创建文件夹树的等效选项是什么?有吗?
【问题讨论】:
标签: windows batch-file cmd mkdir
在 Linux 中,mkdir -p 创建一个文件夹树。
在 Windows 中创建文件夹树的等效选项是什么?有吗?
【问题讨论】:
标签: windows batch-file cmd mkdir
我今天只是尝试创建多个文件夹,它正在工作!
mkdir "templates" "static/css" "static/js"
【讨论】:
mkdir 默认创建所有中间目录。只需确保使用“\”作为分隔符即可。
【讨论】:
当我尝试使用以下方法创建目录时,出于一个奇怪的原因;
mkdir src/main/java/main/resources
不行,我只好用双引号把路径括起来,如下图;
mkdir "src/main/java/main/resources"
此外,unix 允许这样做;
mkdir -p src/main/java src/main/resources
下面会创建两个分支,相当于windows上的;
mkdir "src/java/resources" "src/main/resources"
src
-----java
-------resources
-----main
-------resources
我希望这会有所帮助! xox
【讨论】:
如果您想使用正斜杠,只需在双引号内给出您想要的目录结构。 mkdir "org/frame/bu/fed/config"
【讨论】:
如果启用了命令扩展,Windows mkdir 会自动执行此操作。它们几乎出现在我用过的每个盒子上,但如果没有,您可以创建自己的脚本来执行此操作:
@echo off
setlocal enableextensions
md %1
endlocal
扩展:
命令扩展是 cmd.exe 的一项附加功能,它允许您做更多事情(以与批处理语言的早期版本稍微兼容为代价)。
Windows XP cmd.exe 应该默认启用这些扩展,但您可以配置您的机器,使其默认禁用(使用"cmd /e:off" 作为默认处理器)。如果您这样做并且想要使用扩展,您的 cmd 文件必须有一个 setlocal 才能重新打开它们。
上面的脚本可以被称为 md2.cmd ,然后您可以保证能够使用"md2 a\b\c" 创建多个目录级别,而不必担心是否启用了扩展。
我写的几乎每一个cmd 脚本都以:
setlocal enableextensions enabledelayedexpansion
以确保我尽可能接近我心爱的bash 的行为:-)
【讨论】:
md 更好吗?
在 Windows 中,mkdir 默认创建目录树。
mkdir a\b\c
【讨论】:
md 而不是 mkdir。
mkdir 和 md 在 Windows 中是一样的。