【发布时间】:2016-01-24 02:59:44
【问题描述】:
我有一个问题希望你愿意回答。我有相当多的 BASH 脚本编写经验,但对 Windows 脚本几乎一无所知。所以我的问题可能非常基本。我有一个脚本要求用户输入并使用该输入创建两个目录。然后脚本将 .mp3 文件移动到新创建的目录中。到目前为止一切顺利。
问题是我想将新创建的目录(连同它们包含的文件)复制到我的 MP3 播放器。 (D:\音乐),
但是,当我运行脚本时,mp3 文件被单独复制到目标目录 - 也就是说,它们最终不在复制它们的目录的副本中,而只是在 D:\音乐目录。
换句话说,我最终得到: D:\MUSIC\file.mp3 而不是 D:\MUSIC\new_directory\file.mp3
以下是我的脚本:如果你能告诉我我做错了什么,我将不胜感激。
谢谢,
GG
@echo off
set /p FOLDER= Name the folder
cd C:\Users\John\Music\iTunes\iTunes Media\Podcasts\"Coast to Coast AM Podcast"
MD %FOLDER%
Move *.mp3 %FOLDER%
Copy %FOLDER% D:\MUSIC
CD C:\Users\John\Music\iTunes\iTunes Media\Podcasts\"Darkness Radio"
MD %FOLDER%-DR
Move *.mp3 %UserInputName%-DR
Copy "%FOLDER%-DR" D:\MUSIC
【问题讨论】:
-
如果您添加 bash 代码以供参考,可能会有所帮助。例如,我想知道为什么脚本以交互方式询问文件夹名称,因为它似乎不太方便。也不清楚你为什么在
c:\.....上创建%folder%。看看cd /d选项,可能会有用。 -
看看窗口的
xcopy和/或robocopy- 它们更高级。此外,您可能需要安装 Cygwin,以便可以在 Windows 上使用 bash 脚本。 -
@wOxxOm 基本上,交互式询问目录名称的原因是我不确定如何使用过去的日期作为目录名称来创建目录。当我最初开始这个时,我只是没有想到在 D 上创建目录,因为我要移动的文件已下载到 C。
-
@wOxxOm 我想我的问题归结为:在脚本中,当您使用变量引用目录名称时,将该目录及其内容复制到另一个位置的语法是什么?
-
然后将新信息放入问题中。可以编辑吗?
标签: batch-file directory copy