0 / 0 / 0
Регистрация: 11.01.2022
Сообщений: 2
|
|
1 | |
Нужно переконвертировать VBS script в Powershell script03.02.2022, 14:23. Показов 1220. Ответов 5
Метки нет (Все метки)
Привет всем. Возникла необходимость переписать VBS скрипт для копирования логов в Powershel без изменения логики. Знаний в Powershel совсем не хватает. Буду очень благодарен за помощь.
VBS скрипт: Код
'on error resume next sSearchDir = "С:\Logs\" sDestinDir = "\\external.com\logs\" bDebug = true set oFS = CreateObject("Scripting.FileSystemObject") Set oNet = CreateObject("WScript.Network") Set oShell = CreateObject("WScript.Shell") dYesterday = DateAdd("d", -1, now) sYear = Right(Year(dYesterday), 2) sMonth = Month(dYesterday) sDay = Day(dYesterday) If Len(sMonth) = 1 Then sMonth = "0" & sMonth If Len(sDay) = 1 Then sDay = "0" & sDay sYesterday = sYear & sMonth & sDay If bDebug Then wscript.echo "now: " & now If bDebug Then wscript.echo "yesterday: " & dYesterday If bDebug Then wscript.echo "yesterday2:" & sYesterday 'WScript.Echo (sSearchDir & "u_ex" & sYesterday & ".log") If oFS.FileExists(sSearchDir & "u_ex" & sYesterday & ".log") Then If bDebug Then wscript.echo "command: " & """" & oShell.ExpandEnvironmentStrings("%ProgramFiles(x86)%") & "\7-Zip\7z.exe"" a " & sSearchDir & "u_ex" & sYesterday & ".log" & " " & sSearchDir & sYesterday & ".zip" iRet = oShell.Run("""" & oShell.ExpandEnvironmentStrings("%ProgramFiles(x86)%") & "\7-Zip\7z.exe"" a " & sSearchDir & "ex" & sYesterday & ".zip" & " " & sSearchDir & "u_ex" & sYesterday & ".log") WScript.sleep 60000 oFS.CopyFile sSearchDir & "ex" & sYesterday & ".zip", sDestinDir,TRUE If iRet = 0 Then oFS.DeleteFile sSearchDir & "u_ex" & sYesterday & ".log", True End If WScript.Quit(iRet)
0
|
03.02.2022, 14:23 | |
Ответы с готовыми решениями:
5
VBS script переписать на jscript Не работает сокращение <% %> и не скрывается код,расположенный между <script></script> Баг переноса скрипта: The script don't inherit a native class that can manage a script Поиск архивных данных по дате vbs script Поиск архивных данных по дате vbs script |
4336 / 2126 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
|
|
03.02.2022, 14:34 | 2 |
у кого-то наоборот в PS - хватает, а в VBS - нет. Вот если бы расписали подробно что и как делает скрипт, с комментариями по строкам, зачем он нужен (какую цель выполняет), бывает что на другом языке приходится (или удобнее) практически полностью переделывать код или подходить с другой стороны.
1
|
6327 / 2753 / 1071
Регистрация: 06.06.2017
Сообщений: 9,362
|
|
03.02.2022, 15:54 | 3 |
alpap, vbs коряво написан. В общем:
1. Проверяет через константу, что надо выводить инфу в консоль и при подтверждении выводит даты в формате: Код
now: 03.02.2022 15:44:52 yesterday: 02.02.2022 15:44:52 yesterday2:220202 2a. Выводит при той же проверке команду "%ProgramFiles(x86)%\7-Zip\7z.exe" a С:\Logs\u_ex220202.log С:\Logs\220202.zip и выполняет её. 2b. Копирует С:\Logs\ex220202.zip в \\external.com\logs\ 2с. Если паковка прошла без ошибок, то удалить С:\Logs\u_ex220202.log 3. Код возврата 7z отправляется в код выхода интерпретатора. Будешь делать? Мне лень.
1
|
㊙️
1316 / 244 / 57
Регистрация: 10.08.2018
Сообщений: 574
|
||||||
03.02.2022, 17:57 | 4 | |||||
Сообщение было отмечено gibastus как решение
Решение
На скорую руку
0
|
0 / 0 / 0
Регистрация: 11.01.2022
Сообщений: 2
|
|
03.02.2022, 18:39 [ТС] | 5 |
Спасибо всем за помощь. Дальше сам
0
|
6327 / 2753 / 1071
Регистрация: 06.06.2017
Сообщений: 9,362
|
|
03.02.2022, 18:54 | 6 |
0
|
03.02.2022, 18:54 | |
03.02.2022, 18:54 | |
Помогаю со студенческими работами здесь
6
Организуем бегущую ленту в статус-строке. В контейнере <script></script> разместим такой код: Вырезать из текста всё что между <script и <script> Вызов удаленного файла через <script src=....></script> cant add script component 'Connection' because the script class cannot be found Вызов удаленного файла через <script src=....></script> Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |