Ren*_*h G 42 windows cmd batch-file mkdir
在Linux中,mkdir -p创建一个文件夹树.
Windows中创建文件夹树的等效选项是什么?有没有?
pax*_*blo 43
如果启用了命令扩展,Windows mkdir会自动执行此操作.它们几乎放在我用过的每一个盒子上,但如果它们不是,你可以创建自己的脚本来完成它:
@echo off
setlocal enableextensions
md %1
endlocal
Run Code Online (Sandbox Code Playgroud)
拓展:
命令扩展是cmd.exe的一个附加功能,它允许您执行更多操作(代价是与批处理语言的早期版本稍微兼容).
Windows XP cmd.exe默认情况下应启用这些扩展,但您可以配置您的框,以便默认情况下禁用它们(使用"cmd /e:off"默认处理器).如果您这样做并希望使用扩展名,则您的cmd文件必须具有setlocal才能重新启用它们.
上面的脚本可以被称为md2.cmd,然后你可以保证能够创建多个目录级别,"md2 a\b\c"而不必担心是否启用了扩展.
cmd我写的几乎每一个脚本都以:
setlocal enableextensions enabledelayedexpansion
Run Code Online (Sandbox Code Playgroud)
确保我尽可能接近我心爱的人的行为bash:-)
Ala*_*avi 35
在Windows中,mkdir默认情况下创建目录树.
mkdir a\b\c
我尝试使用以下方法创建目录时出于一个奇怪的原因;
mkdir src/main/java/main/resources
Run Code Online (Sandbox Code Playgroud)
它不起作用,我不得不用双引号括起来,如下图所示;
mkdir "src/main/java/main/resources"
Run Code Online (Sandbox Code Playgroud)
另外,unix允许这样做;
mkdir -p src/main/java src/main/resources
Run Code Online (Sandbox Code Playgroud)
如下所示,将创建两个分支,相当于windows上的分支;
mkdir "src/java/resources" "src/main/resources"
src
-----java
-------resources
-----main
-------resources
Run Code Online (Sandbox Code Playgroud)
我希望这有帮助!XOX