2013-07-29 75 views
1

我努力使創建與此格式的TXT文件BAT文件BAT文件:使創建按定義的格式txt文件

" 

[date] 
2013/29/07 
10:38:00 

" 

代碼不與bat文件工作,只有當我把它放在與複製粘貼CMD手冊:

echo [date] > e:\TAG.txt 
for /f "tokens=2-4 delims=/ " %i in ('date /t') do (echo %k/%j/%i >> e:\TAG.txt goto :eof) 
for /F "tokens=1-4 delims=: " %i in ('time /t') do echo %i:%j:00 >> e:\TAG.txt 

我做錯了什麼?

回答

0

只需將開頭添加到行首即可。

您的批處理文件的內容應該是這樣的:

start for /f "tokens=2-4 delims=/ " %i in ('date /t') do echo %k/%j/%i >> e:\TAG.txt 
1
在批處理文件

,在加倍您%for循環:

echo [date] > e:\TAG.txt 
for /f "tokens=2-4 delims=/ " %%i in ('date /t') do (echo %%k/%%j/%%i >> e:\TAG.txt goto :eof) 
for /F "tokens=1-4 delims=: " %%i in ('time /t') do echo %%i:%%j:00 >> e:\TAG.txt 

(用於命令行單%,雙%%批處理文件中 - 但只有在for循環)

+0

謝謝,如果我想要一個帶有聯繫人的文本文件「2009.08.18 12:12:12」我該怎麼做for循環for one line? – user2629452

1

您需要批處理文件內的%%更換%

你不需要goto :eof內進行。即使你需要,你必須使用命令&兩者之間。

在部分時間,你不只是2

還可以考慮使用%DATE%%TIME%,而不是調用TIME /TDATE /T需要4個參數,:

echo [date] > e:\TAG.txt 
for /f "tokens=2-4 delims=/ " %%i in ("%date%") do echo %%k/%%j/%%i >> e:\TAG.txt 
for /F "tokens=1-2 delims=: " %%i in ("%time%") do echo %%i:%%j:00 >> e:\TAG.txt 

編輯:單行:

echo [date] > e:\TAG.txt 
for /f "tokens=2-7 delims=/ " %%i in ("%date%/%time::=/%") do echo %%k/%%j/%%i %%l:%%m:%%n >> e:\TAG.txt 
0

該技術消除了填充和不同區域設置/計算機的問題設置。

@echo off 
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a 
set YYYY=%dt:~0,4% 
set MM=%dt:~4,2% 
set DD=%dt:~6,2% 
set HH=%dt:~8,2% 
set Min=%dt:~10,2% 
set Sec=%dt:~12,2% 

>e:\TAG.txt echo [date] 
>>e:\TAG.txt echo %yyyy%/%dd%/%mm% 
>>e:\TAG.txt echo %hh%:%min%:%sec%