首页 > 解决方案 > 从同级目录移动文件

问题描述

是否可以制作一个仅使用相对路径从同级目录中移动特定文件的批处理文件?

例如Foo/bar/executable.exe,运行文件的Foo/quid/executable.exe位置batFoo/quid/bat.bat

如果是这样,怎么做?

我主要是 C++ 开发人员,不知道任何批次,但很想学习一些。抱歉,如果我似乎没有先研究这个,我做了,但我很挣扎。

标签: batch-filecmd

解决方案


这是相对简单的。没有双关语的意思。你只需要了解一些事情。

  1. 你当前的工作目录是什么
  2. 单个句点代表当前工作目录
  3. 两个句点代表上一级目录。

在这里,我将向您展示它是如何从命令行工作的,并且我将使用该TREE命令向您展示文件夹结构的当前状态。这些命令在批处理文件中的工作方式相同。

因此,根据您的示例,当前工作目录是 quid 文件夹....

H:\foo\quid>tree H:\Foo /F /A
Folder PATH listing for volume DATA
Volume serial number is D2F3-49FA
H:\FOO
+---bar
|       file1.txt
|
\---quid
        mybatch.bat

我们可以发出移动命令

H:\foo\quid>move ..\bar\file1.txt .
        1 file(s) moved.

现在您的文件夹结构如下所示。

H:\foo\quid>tree H:\Foo /F /A
Folder PATH listing for volume DATA
Volume serial number is D2F3-49FA
H:\FOO
+---bar
\---quid
        file1.txt
        mybatch.bat


H:\foo\quid>

推荐阅读