如何使用 Windows .bat 文件在当前文件夹上方创建文件夹?

ker*_*ega 3 windows batch command-line batch-file

我需要为许多人制作一个 .bat 文件,将其放置在特定文件夹中,然后将特定文件从所述文件夹移动到当前工作目录上方的另一个文件夹。

我没有他们所说的文件夹的路径,我需要使用相关命令。

我知道如何将文件移动到较低的目录,但不知道如何将它们移动到较高的目录。

这是我设法将文件移动到较低目录的方法(我知道不需要任何技能)。

mkdir "Oudated-do-not-move"
move ThaLuru.shader %cd%/"Oudated-do-not-move"
move DeLin.shader  %cd%/"Oudated-do-not-move"
Run Code Online (Sandbox Code Playgroud)

“移动...”行的列表要大得多,但这里不需要。

但是,我不知道如何将上面的文件夹设为当前文件夹。完全没有。

为了进行测试,在手动创建文件夹后,我尝试了以下选项来移动文件: move DeLin.shader ../"Oudated-do-not-move"- 它有效。

但我不知道如何使用批处理文件而不是手动创建文件夹。

我尝试过这些:

mkdir ../test
mkdir %cd%/../test
mkdir %cd%/test
Run Code Online (Sandbox Code Playgroud)

Mok*_*bai 11

你的问题是使用/(正斜杠)而不是\(反斜杠)

对于 DOS 目录,应该全部用 分隔\,对我来说,以下工作:

mkdir ..\test
Run Code Online (Sandbox Code Playgroud)

一些地方/被接受并且有效,这可能使它看起来应该在任何地方都有效,但“标准”应该\在大多数地方。

为什么Windows 使用反斜杠作为路径而 Unix 使用正斜杠?(强调我的)

/它被大多数程序员级别的 API(在所有版本的 DOS 和 Windows 中)所识别。因此,您经常(但并非总是)可以/在 Windows 下用作目录分隔符。一个值得注意的例外是,您不能在前缀/后用作分隔符\\?,这是使用 Unicode 或包含超过 260 个字符指定路径的唯一方法(即使在 Windows 7 中也是如此)。