我需要为许多人创建一个 .bat 文件,该文件将被放在特定的文件夹中,然后将特定文件从该文件夹移动到当前工作目录上方的另一个文件夹中。
我没有他们所述文件夹的路径,我需要使用相关命令。
我知道如何将文件移动到较低的目录,但不知道如何将它们移动到较高的目录。
这是我设法(我知道不需要任何技能)做的事情,将文件移动到较低的目录。
mkdir "Oudated-do-not-move"
move ThaLuru.shader %cd%/"Oudated-do-not-move"
move DeLin.shader %cd%/"Oudated-do-not-move"
“移动...”行的列表要大得多,但这里不需要。
但是,我完全不知道如何将文件夹置于当前文件夹之上。
为了进行测试,创建文件夹后手动,我尝试了以下选项来移动文件:
move DeLin.shader ../"Oudated-do-not-move"
——它有效。
但我不知道如何使用批处理文件而不是手动创建文件夹。
我尝试过这些:
mkdir ../test
mkdir %cd%/../test
mkdir %cd%/test
答案1
您的问题是使用/
(正斜杠)而不是\
(反斜杠)
对于 DOS 目录应该全部用 分隔\
,对我来说,以下方法是有效的:
mkdir ..\test
有一些被接受和起作用的地方/
,这可能使它看起来应该在任何地方都起作用,但“标准”应该\
在大多数地方。
从为什么 Windows 使用反斜杠作为路径而 Unix 使用正斜杠?(重点是我的)
/
它被大多数程序员级 API 所识别(在所有版本的 DOS 和 Windows 中)。因此,您通常可以(但并非总是)/
在 Windows 下使用它作为目录分隔符。一个值得注意的例外是,您不能在前缀/
后使用它作为分隔符\\?
(即使在 Windows 7 中)这也是使用 Unicode 或包含超过 260 个字符的路径指定的唯一方法。