Forum

.bat dosyası
 
Bildirimler
Hepsini Temizle

.bat dosyası

6 Yazılar
4 Üyeler
0 Likes
472 Görüntüleme
(@GurkanKoymen)
Gönderiler: 24
Trusted Member
Konu başlatıcı
 

Merhabalar,

Bu konuyu açmak için doğru yer burası mı bilmiyorum Ama şöyle bir sorum olacak. Öyle bir bat dosayası oluşturmak istiyorum ki aktif directory de aa.tib dosyası var ise bunun adını o günün tarihi ve saati olacak şekilede değiştirsin örneğin 20.03.2013_10:03:05.tib şekline dğiştirsin

Aslında internette yaptığım arama da şu şekilde bir komut buldum. Ama bu komut aa.tib dosyasının adını sadece o günkükü tarih ile güncelliyor oysa ben tarih_zaman (saat ,dakika ve saniye de olacak şekilde) yapsın istiyorum İnternetten bulduğum komu aşağıdaki gibidir. Yardımcı olursanız çok sevineceğim

 

if exist aa.tib rename aa.tib "%date:/=.%.tib" 

 

 
Gönderildi : 20/03/2013 13:09

(@vasviuysal)
Gönderiler: 7889
Üye
 

"%date%".tib seklinde kullanırsanız yapabilirsiniz sanırım

 
Gönderildi : 20/03/2013 13:20

(@GurkanKoymen)
Gönderiler: 24
Trusted Member
Konu başlatıcı
 

Evet yapıyor ama yukarıda da değindiğim gibi aa.tib dosyasının adını 20.03.213.tib şeklinde o günkü tarihe göre değiştiriyor. Böyle olunca da bu komutu her yarım saatte bir çalıştırınca isim benzerliği nedeniyle sıkıntı çıkıyor Bu yüzden ben aa.tib adını o günkü tarih +saatle değiştirsin istiyorum. 

İlginiz için teşekkürler.. 

 

 
Gönderildi : 20/03/2013 13:53

(@MehmetAcar)
Gönderiler: 13
Eminent Member
 

set d=%date:~-4,4%%date:~-7,2%%date:~0,2%
set d=%d: =_%
set t=%time:~0,2%%time:~3,2%%time:~6,2%
set t=%t: =0%

RENAME "c:\aa.tib" "aa_%d%_%t%.tib"

 
Gönderildi : 24/03/2013 00:27

(@borayildiz)
Gönderiler: 675
Honorable Member
 

regional settings değiştiğinde o script çakabilir.

aşağıdaki gibi kullanırsanız regional settings ten etkilenmezsiniz

@echo off

setlocal ENABLEDELAYEDEXPANSION

for /f "skip=1 tokens=1-6" %%a in ('wmic path Win32_LocalTime Get Day^,Hour^,Minute^,Month^,Second^,Year /Format:table') do (
    if not "%%~f"=="" (
        set /A FormattedDate=10000 * %%f + 100 * %%d + %%a
        set FormattedDate=!FormattedDate:~6,2!.!FormattedDate:~4,2!.!FormattedDate:~0,4!
       
        set /A FormattedTime=10000 * %%b + 100 * %%c + %%e
        set FormattedTime=0000000!FormattedTime!
        set FormattedTime=!FormattedTime:~-6,2!.!FormattedTime:~-4,2!
    )
)

:: Display the results

echo %FormattedDate%_%FormattedTime%

endlocal

 
Gönderildi : 25/03/2013 14:15

(@GurkanKoymen)
Gönderiler: 24
Trusted Member
Konu başlatıcı
 

Tam olarak istediğim buydu. Çok işime yarayacak. Sağolun arkadaşlar...

 
Gönderildi : 27/03/2013 17:02

Paylaş: