2013-06-19 28 views

Trả lời

7
for /f "tokens=1-3 delims=/" %%a in ("%date%") do md "%%a_%%b_%%c" 
+0

cảm ơn, hoạt động như một nét duyên dáng – DextrousDave

+3

cùng một kết quả bạn có thể nhận được với 'md '% date:/= _%" ':-) .. – Endoro

+0

cảm ơn bạn! đánh giá cao – DextrousDave

2

Làm điều này:

for /F "tokens=2-4 delims=/ " %%i in ('date /t') do set yyyymmdd1="%%k"_"%%i"_"%%j" 
mkdir %yyyymmdd1% 
+1

lấy từ một câu trả lời trước có thể giúp bạn, http://stackoverflow.com/questions/11280077/batch-script-to-make-backup-folder-only-new-and-modified-files/ - chỉ xem cách tôi thao tác "%% i" hoặc %% k hoặc %% j và _ giữa chúng – ilansch

+0

cảm ơn, nhưng câu trả lời của bạn chỉ hiển thị tháng và ngày trong tên thư mục, không phải năm ... kiểm tra – DextrousDave

+0

hi, nó cho thấy tất cả có thể bạn không sao chép dán toàn bộ dòng :) câu trả lời của tôi là như một trong những bạn chấp nhận. nó giống hệt nhau và ban đầu – ilansch

2

hoặc đơn giản là

SET Today=%Date:~10,4%_%Date:~7,2%_%Date:~4,2% 

echo %today% 

đầu ra

2013_06_19 
Press any key to continue . . . 

Sau đó, bạn có thể dễ dàng sử dụng biến hiện nay để tạo thư mục ví dụ .:

mkdir %today% 

EDIT: Định dạng YYYY_MM_DD

+0

với mã của bạn như hiện tại, nó sẽ gỡ bỏ 'hôm nay' như tên thư mục – DextrousDave

+0

có, không phải là những gì bạn muốn? bạn có thể thư ký tự ổ đĩa hoặc một phần khác của đường dẫn. Giải pháp này không chứa bất kỳ vòng lặp nào –

22

% date% phụ thuộc vào cài đặt máy tính và ngôn ngữ của bạn. Đây là một cách đáng tin cậy để có được một ngày và thời gian đóng dấu. Win XP pro trở lên.

Nếu bạn cần sử dụng tệp bó của mình trên các máy không xác định thì điều này rất đáng sử dụng.

:: time and date stamp YYYYMMDD, HHMMSS and YYYY-MM-DD_HH-MM-SS 
@echo off 
for /f "delims=" %%a in ('wmic OS Get localdatetime ^| find "."') do set dt=%%a 
set datestamp=%dt:~0,8% 
set timestamp=%dt:~8,6% 
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% 

set stamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec% 
echo stamp: "%stamp%" 
echo datestamp: "%datestamp%" 
echo timestamp: "%timestamp%" 

pause 
+3

ở người cuối cùng không dựa vào% date% phụ thuộc vào miền địa phương! –

Các vấn đề liên quan