批处理文件将文件移动到另一个目录
Posted
技术标签:
【中文标题】批处理文件将文件移动到另一个目录【英文标题】:Batch file to move files to another directory 【发布时间】:2013-04-21 02:16:07 【问题描述】:我希望你能帮助我解决这个问题。它可能已经被多次询问(我知道),但由于某种原因,我无法让它工作。
我想将一些文件从“files”目录移动到根目录。
所以文件是,例如:
test1.txt test2.txt test3.zip test4.zip test5.exe test6.exe
我希望将这些文件移动到不同的目录。
所以我正在使用这样的东西:
move files\*.txt ..\txt /q
move files\*.zip ..\zip /q
move files\*.exe ..\exe /q
但我总是会出错。它找不到文件,然后 CMD 停止工作。
谢谢。
编辑:
它是这样工作的:
move /y .\files\*.txt ..\txt
move /y .\files\*.zip ..\zip
move /y .\files\*.exe ..\exe
但现在它不会将文件移动到父目录。
【问题讨论】:
当前工作目录是什么? C:/test 这个。the root directory.
-- to different directories
去哪儿? But I always get errors
消息??
【参考方案1】:
/q 不是有效参数。 /y:禁止提示确认覆盖
还有..\txt 表示父目录下的目录txt,而不是根目录。 根目录将是:\ 请提及您遇到的错误
试试:
move files\*.txt \
编辑: 试试:
move \files\*.txt \
编辑 2:
move C:\files\*.txt C:\txt
【讨论】:
是的,抱歉,我已经解决了这个问题,我现在正在使用 /y。没有错误,它只是找不到文件,但它们确实存在于“文件”目录中。是的,我想将它们移动到父目录上的文件夹中。 尝试:move \files\ *.txt \ [我更新了回复,因为这里显示不正确] 不,它一直说我找不到文件。 尝试完整路径:移动 C:\files\ *.txt C:\ ,确保它包含文件 *.txt 并且它们没有被隐藏。 正如我之前提到的:..\txt 不是父目录。它是父目录下的txt目录。这是你需要的吗?父目录下有txt目录吗?【参考方案2】:假设根文件夹中有一个文件test.txt
,并且想将它移动到\TxtFolder
,
你可以试试
move %~dp0\test.txt %~dp0\TxtFolder
.
参考答案:relative path in BAT script
【讨论】:
【参考方案3】:试试:
move "C:\files\*.txt" "C:\txt"
【讨论】:
以上是关于批处理文件将文件移动到另一个目录的主要内容,如果未能解决你的问题,请参考以下文章
如何将目录的所有内容(不包括父目录)移动到另一个目录 Groovy [重复]