К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

ПолуОФФ VBS movefile

Гость
0 - 13.02.2017 - 16:18
If fso.FileExists(datafile) Then
' мало ли предыдущий бакуп остался
If fso.FileExists(datafile & "~") Then
fso.DeleteFile datafile & "~"
End If
fso.MoveFile datafile, datafile & "~"
End If

Ругается на последний End If без каких-либо комментариев :(
datafile - правильное имя несуществующего файла
Выполняться оно должно как скрипт openconf в пофигураторе клюшек ;-)
Доки читал, запятые проверил, ниалё :(
Хелп плиз :)




Отредактировано saper; 13.02.2017 в 16:32. Причина: 5.9. Злоупотребление сленгом/жаргоном, а также «падонкаффским», или «олбанским» языком
Гость
1 - 13.02.2017 - 22:47
datafile & "~" - прибавляет символ справа. Т.е., "1Cv8.1CD" превращается в "1Cv8.1CD_". Расширение в четыре символа... Интересная задумка. Плод размышления?

Вообще-то, бекапам принято давать префикс. Хорошо, если этот префикс содержал дату YYYYMMDD (при просмотре отлично сортируется):
oDate = Date ' Используем дату в формате ггггммдд для формирования имени файла:
TextYear = FormatNumber(Year(oDate),0,-1,0,0)
TextMonth = FormatNumber(Month(oDate),0,-1,0,0)
if len(TextMonth)<2 then TextMonth = "0" & TextMonth
TextDay = FormatNumber(Day(oDate),0,-1,0,0)
if len(TextDay)<2 then TextDay = "0" & TextDay


Расставь WScript.Echo для локализации проблемы. Убери ненужные в данном случае EndIF.
Повтори.
Да, и для WHS указывай версию (WScript.Version) и Винду.
2 - 13.02.2017 - 23:03
Цитата:
Сообщение от VZ Посмотреть сообщение
Расширение в четыре символа... Интересная задумка. Плод размышления?
Возможно, всего лишь подражание "суперкорпорации", которая "умнее" и коей высочайше рекомендовано "доверять": DOCX, XLSX, PPTX - скока символов? Ась?

P.S. Не торт, не торт...
Гость
3 - 13.02.2017 - 23:19
Тролль тут как тут. Флудит...
4 - 14.02.2017 - 01:09
Самокритично... :-)
Гость
5 - 14.02.2017 - 17:19
Спасибо за уделённое внимание.
Всё решилось до банальности просто, и именно этого куска кода вообще не касалось. В сообщении об ошибке указывался номер строки на единицу меньше, чем оно фактически падало. Видимо, особенности исполнения vbs из-под openconf. Ну да не важно уже.

(1) Сделал бакупку нужного файла; пересоздал файл. Если файл пересоздался правильно - бакупка убилась. Если косякнуло - бакупка вернулась на место. Это не архивация и хранение, там у меня всё решено давно и надёжно. С префиксами YYYYMMDD-HHMM :)

(2) Я живу под линухами, здесь для таких вот одноразовых бакупок принято оканчивать имя файла тильдой.

Ещё раз спасибо :) Теперь за понимание.


К списку вопросов






Copyright ©, Все права защищены