用于将文件从文件夹移动到另一个文件夹的批处理文件&在其位置创建一个文本文件,其中包含已移动文件的名称

时间:2015-07-28 20:05:32

标签: batch-file cmd

我需要一个批处理文件,我们可以从Windows 7上下文菜单选项“发送到”中提供输入(任何文件)。 然后,此批处理文件必须将该文件移动到另一个文件夹,&在其位置创建一个文本文件,其名称与移动文件的名称相同。

我需要将mp3文件从其相册文件夹移动到公共文件夹,同时跟踪哪个文件属于哪个文件夹。

1 个答案:

答案 0 :(得分:0)

首先使用以下内容创建一个Batchfile:

@echo off
set newpath=H:/testing
set filename=%*
move %filename% %newpath%
set txtfilename=%filename:~0,-3%txt
echo.content of textfile >%txtfilename%

而不是H:/测试你放置文件的新路径, 而不是文本文件的内容"你写下在文件的旧位置创建的文本文件中的内容。

创建批处理文件的位置无关紧要,因为在下一步中,您将转到搜索栏并输入shell:sendto并打开文件夹, 您可以在其中创建批处理文件的快捷方式。

您现在可以通过&#34发送文件到批处理文件;发送到" menue, 批处理文件将文件复制到指定的路径,并留下一个文本文件,其中包含移动文件所在的所需内容。

编辑:如果要在结尾处包含不同字符数的文件上使用它,则必须将代码修改为

@echo off
setlocal enabledelayedexpansion
set newpath=H:/testing
set filename=%*
move %filename% %newpath%
set ending=%filename:*.=%
set txtfilename=!filename:%ending%=!.txt
echo.content of textfile >%txtfilename%

但在这种情况下,您的文件夹名称中不能包含点或文件结尾,或者文本文件无法正常工作。