Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Как вписать дату и время в название файла?

Ответить
Настройки темы
VBS/WSH/JS - [решено] Как вписать дату и время в название файла?

Пользователь


Сообщения: 64
Благодарности: 7

Профиль | Отправить PM | Цитировать


Изменения
Автор: navigator19
Дата: 12-03-2011
Собственно вопрос как вписать дату и время в название файла при копировании
Вот пример:
Код: Выделить весь код
set service = GetObject ("winmgmts:")  
dim i  
i = 0  
  
do  
for each Process in Service.InstancesOf ("Win32_Process")  
    If Process.Name = "Maxthon.exe" then  
        i = 1  
    End If  
next  
  
If i = 0 then  
    Dim FSO  
    Set FSO = CreateObject("Scripting.FileSystemObject")  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\Form.dat",         "D:\Backup\%date%_Form.dat"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\history2.dat",     "D:\Backup\%date%_history2.dat"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\Session.ini",      "D:\Backup\%date%_Session.ini"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\LastSession.ini",  "D:\Backup\%date%_LastSession.ini"  
         
    wscript.quit  
End if  
i = 0  
WScript.Sleep 20 * 1000  
loop
но при копировании дата не вписывается, подскажите где может быть ошибка?

Отправлено: 12:33, 12-03-2011

 

Старожил


Сообщения: 175
Благодарности: 119

Профиль | Отправить PM | Цитировать


navigator19, переделайте по этому образцу:
Из "D:\Backup\%date%_Form.dat" в "D:\Backup\" & Date & "_Form.dat"
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:49, 12-03-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 64
Благодарности: 7

Профиль | Отправить PM | Цитировать


Огромное спасибо!
А как к названию файла ещё и время добавить?

Отправлено: 14:26, 12-03-2011 | #3


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Я бы ещё предложил использовать не просто дату в локальном формате, а в виде YYYYMMDD (для целей визуальной сортировки файлов по алфавиту): Серый форум / vbscript: получение формата дата-время для имени файла, почерпнутую у amel27 здесь.
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:29, 12-03-2011 | #4


Старожил


Сообщения: 175
Благодарности: 119

Профиль | Отправить PM | Цитировать


Iska, а я в свое время такое средствами VBS реализовывал. В принципе, то же самое.
Код: Выделить весь код
DT = Now
DateVal = Year(DT) & _
          Right("0" & Month(DT), 2) & _
          Right("0" & Day(DT), 2) & _
          Right("0" & Hour(DT), 2) & _
          Right("0" & Minute(DT), 2) & _
          Right("0" & Second(DT), 2)
WScript.Echo DateVal
Цитата navigator19:
А как к названию файла ещё и время добавить? »
На этом примере разберешься? Я думаю, без проблем.
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:28, 12-03-2011 | #5


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


2SendMessage: угу, аналогично. На VBScript варианты есть, на JScript — уже сложнее. В первую очередь вариант amel27 мне понравился тем, что это готовый вариант для пакетного файла; и, в первую очередь — формат не зависит от региональных настроек , а файлы с датой/временем в имени я предпочитаю держать именно в японском формате даты «YYYYMMDD», дабы они сразу были визуально отсортированы.

Отправлено: 16:52, 12-03-2011 | #6


Пользователь


Сообщения: 64
Благодарности: 7

Профиль | Отправить PM | Цитировать


Не понял как именно применить это
Код: Выделить весь код
DT = Now
DateVal = Year(DT) & _
          Right("0" & Month(DT), 2) & _
          Right("0" & Day(DT), 2) & _
          Right("0" & Hour(DT), 2) & _
          Right("0" & Minute(DT), 2) & _
          Right("0" & Second(DT), 2)
WScript.Echo DateVal
к скрипту, куда это вставить?

Отправлено: 20:01, 12-03-2011 | #7


Старожил


Сообщения: 175
Благодарности: 119

Профиль | Отправить PM | Цитировать


Цитата navigator19:
к скрипту, куда это вставить? »
Код: Выделить весь код
If i = 0 then  
    Dim FSO, DT, DateVal
    DT = Now
    DateVal = Year(DT) & _
              Right("0" & Month(DT), 2) & _
              Right("0" & Day(DT), 2) & _
              Right("0" & Hour(DT), 2) & _
              Right("0" & Minute(DT), 2) & _
              Right("0" & Second(DT), 2)
    Set FSO = CreateObject("Scripting.FileSystemObject")  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\Form.dat",         "D:\Backup\" & DateVal & "_Form.dat"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\history2.dat",     "D:\Backup\" & DateVal & "_history2.dat"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\Session.ini",      "D:\Backup\" & DateVal & "_Session.ini"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\LastSession.ini",  "D:\Backup\" & DateVal & "_LastSession.ini"  
         
    wscript.quit  
End if
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:22, 12-03-2011 | #8


Пользователь


Сообщения: 64
Благодарности: 7

Профиль | Отправить PM | Цитировать


Спасибо, но файл получается Form.dat_20110312235253 без разделителей как их вставить?

Отправлено: 21:53, 12-03-2011 | #9


Пользователь


Сообщения: 78
Благодарности: 23

Профиль | Отправить PM | Цитировать


Цитата navigator19:
Спасибо, но файл получается Form.dat_20110312235253 без разделителей как их вставить? »
Извините, что вклиниваюсь в диалог...
Цитата navigator19:
navigator19 »
, ты этого хочешь?
Код: Выделить весь код
d = DatePart("d", date)&"." & DatePart("m", date) &"." & DatePart("yyyy", date) ' дата
t = DatePart("h", time)&"." & DatePart("N", time) &"." & DatePart("S", time)    ' время
' Временные значения можно переставлять, как хочешь.
'---------------------------------------------------------------------------
    Set FSO = CreateObject("Scripting.FileSystemObject")  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\Form.dat",         "D:\Backup\" &d&"_"&t&"_Form.dat"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\history2.dat",     "D:\Backup\" &d&"_"&t&"_history2.dat"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\Session.ini",      "D:\Backup\" &d&"_"&t&"_Session.ini"  
    FSO.CopyFile "D:\Maxthon2\SharedAccount\Data\LastSession.ini",  "D:\Backup\" &d&"_"&t&"_LastSession.ini"
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:35, 12-03-2011 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Как вписать дату и время в название файла?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Как в функцию вписать? JaguarSP AutoIt 10 24-04-2010 01:44
Разное - Как к названию файла динамически дописать дату? KillHunter Microsoft Windows 2000/XP 0 23-05-2008 15:23
Как к названию файла динамически дописать дату? av_spb Microsoft Windows NT/2000/2003 4 09-11-2005 12:11
как изменить дату содания файла вручную? dimicont Хочу все знать 3 03-10-2005 18:11
Как взять дату создания файла из перла? radioamator Вебмастеру 2 30-04-2004 11:14




 
Переход