File 创建一个批处理文件,创建一个包含今日';s date然后将文件从文件夹中移动到新创建的文件夹中

File 创建一个批处理文件,创建一个包含今日';s date然后将文件从文件夹中移动到新创建的文件夹中,file,batch-file,directory,move,File,Batch File,Directory,Move,我需要创建一个批处理文件,该文件将以月-日-年格式创建一个包含今天日期的文件夹(示例080112)。然后,一旦它被创建,我需要将文件从一个设置的文件夹移动到它刚刚创建的文件夹中。老实说,我不知道如何制作批处理文件。 其余的只是使用copy/xcopy复制到该文件夹:) 如果你需要更详细地说明如何做,请告诉我 干杯 [编辑]:以下是完整的解决方案: 使用记事本->另存为“something.bat”或使用CMD->copy con something.bat创建文件(完成后按Ctrl-Z) 并粘贴

我需要创建一个批处理文件,该文件将以月-日-年格式创建一个包含今天日期的文件夹(示例080112)。然后,一旦它被创建,我需要将文件从一个设置的文件夹移动到它刚刚创建的文件夹中。老实说,我不知道如何制作批处理文件。

其余的只是使用copy/xcopy复制到该文件夹:)

如果你需要更详细地说明如何做,请告诉我

干杯

[编辑]:以下是完整的解决方案:

使用记事本->另存为“something.bat”或使用CMD->copy con something.bat创建文件(完成后按Ctrl-Z) 并粘贴以下代码:

@echo off
IF "%1"=="" GOTO MissingArgument
for /f "tokens=2-4 delims=/ " %%a in ('date /T') do set year=%%c
for /f "tokens=2-4 delims=/ " %%a in ('date /T') do set month=%%a
for /f "tokens=2-4 delims=/ " %%a in ('date /T') do set day=%%b
set TODAY=%month%%day%%year%
md %TODAY%
MOVE %1\*.* %TODAY%
GOTO end
:MissingArgument
echo Incorrect Syntax: Source Folder Name Required!
:end
希望这有帮助

set TODAY=%date:~10,4%%date:~7,2%%date:~4,2%
是将日期部分放入shell变量的另一种方法

发件人:


乔尼。。。FTW,当然,感谢您提供了完整的答案。

我自己在这个问题上遇到了麻烦,但请不要再麻烦了: 将源文件夹放在
.bat
文件之后:

yourscript.bat c:\users\myname\Desktop\sourcefolder

希望对其他人有所帮助,我花了几秒钟时间:D

根据Erik的建议重命名文件夹:

move FolderName FolderName_%date:~7,2%%date:~4,2%%date:~12,4%

作为对另一种解决方案的评论可能更好。
FOR /f "tokens=2-4 delims=/ " %%i in ('DATE/T') do SET today_fname=%%i%%j%%k
cd c:\myfolder\%today_fname%
REM This creates a folder named 05242016 in c:\myfolder
@echo on

:: Use date /t and time /t from the command line to get the format of your date and
:: time; change the substring below as needed.

:: This will create a timestamp like yyyy-mm-dd-hh-mm-ss.
set TIMESTAMP=%DATE:~10,4%-%DATE:~4,2%-%DATE:~7,2%-%TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%

@echo TIMESTAMP=%TIMESTAMP%

:: Create a new directory
md e:\example\"%1\%TIMESTAMP%"
xcopy /y c:\windows E:\windows\%TIMESTAMP% /e

@echo on