[ Обновленные темы · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: Andrey_A, ХарВик, chip642  
ЗАКАЗ СКРИПТОВ
Andrey_AДата: Среда, 29.02.2012, 23:46 | Сообщение № 1
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
ЗАКАЗ СКРИПТОВ




В этой теме Вы можете высказывать идеи о написании того или иного скрипта. Если Вы столкнулись с монотонной задачей, которую можно автоматизировать и не знаете как это сделать, Вы можете описать свою проблему здесь и возможно найдутся те, кто подскажет как её решить.
Большая просьба чётко описывать задачу, от этого будет зависеть качество её решений

Готовые решения будут открепляться в отдельные темы

[info]
Тема по большому счёту закрыта, т.к. я больше не пишу отдельных скриптов...
Большинство скриптов для Total Commander вошли в функционал в утилиты TCIMG

[/info]



 
Andrey_AДата: Понедельник, 26.05.2014, 18:11 | Сообщение № 256
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата urievich ()
при запуске скрипта этим переменным передавались (аргументы скрипта)

Так я вам выше дал получение, запустите приложенный скрипт так как вы делаете:

Код
Cnt = WScript.Arguments.Count
MsgBox "Переменная Cnt =" & vbNewLine & "<" & Cnt & ">"
If Cnt > 0 Then
   Parameter1 = WScript.Arguments(0)
MsgBox "Переменная Parameter1 =" & vbNewLine & "<" & Parameter1 & ">"
End If
If Cnt > 1 Then
   Parameter2 = WScript.Arguments(1)
MsgBox "Переменная Parameter2 =" & vbNewLine & "<" & Parameter2 & ">"
End If


 
urievichДата: Понедельник, 26.05.2014, 18:34 | Сообщение № 257
Рядовой

На сайте с: 26.05.2014
Город: Москва
Сообщений: 4
Награды: 0
Репутация: 0
Спасибо передать получилось, но оказывается он у меня в глубь папок не идёт только первой создаёт копии( Из за чего такое может быть не подскажите?
 
Andrey_AДата: Понедельник, 26.05.2014, 18:40 | Сообщение № 258
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата urievich ()
может быть не подскажите?

Я Вашу задачу не знаю, поэтому затрудняюсь ответить... Есть примеры копирования в теме КОЛЛЕКЦИЯ СКРИПТОВ


 
urievichДата: Понедельник, 26.05.2014, 18:58 | Сообщение № 259
Рядовой

На сайте с: 26.05.2014
Город: Москва
Сообщений: 4
Награды: 0
Репутация: 0
Огромное спасибо за помощь!
Вот конечный результат может пригодиться)
Код
Cnt = WScript.Arguments.Count  
If Cnt > 0 Then  
    strSourceFolder = WScript.Arguments(0)  
End If  
If Cnt > 1 Then  
    strDestFolder = WScript.Arguments(1)  
End If

Dim objFSO
Dim strSourceFolder
Dim strDestFolder
Dim objDestFolder

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists(strSourceFolder) Then
      
     If Not objFSO.FolderExists(strDestFolder) Then
         Set objDestFolder = objFSO.CreateFolder(strDestFolder)
     Else
         Set objDestFolder = objFSO.GetFolder(strDestFolder)
     End If
      
     ScanSubFolders objFSO.GetFolder(strSourceFolder), objDestFolder
     MsgBox "OK"
End If

WScript.Quit 0

Sub ScanSubFolders(objFolder, objDestFolder)
     Dim objSubFolder

     For Each objSubFolder In objFolder.SubFolders
         ScanSubFolders objSubFolder, objFSO.CreateFolder(objFSO.BuildPath(objDestFolder.Path, objSubFolder.Name))
     Next
End Sub
 
SLAVCHIKSДата: Понедельник, 23.06.2014, 13:05 | Сообщение № 260
Рядовой

На сайте с: 13.04.2014
Город: Харьков
Сообщений: 5
Награды: 0
Репутация: 0
Есть задача распаковать и рассортировать тысячи архивов, скачанных за пару лет. Проблема - попадаются иногда битые архивы, и попадаются с паролями - следовательно в первом и втором случае ТС останавливает автоматическую распаковку архивов, выводя предупреждение о битом архиве, и создает неполную распаковку (мусор) или просит пароль - это очень усложняет задачу и растятягивает по времени задачу, и портит немало нервов.

Нужен скрипт, подвязанный например к RAR или 7z, который бы выделенные архивы начал тестировать на целостность и на наличие установленного пароля и автоматом переместил такие файлы в папки созданные в той же директории BadArch и NeedPass. А также кнопки под такие скрипты.

Если у кого есть идеи, помогите пожалуйста!!!!
 
Andrey_AДата: Вторник, 24.06.2014, 07:10 | Сообщение № 261
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата SLAVCHIKS ()
Нужен скрипт, подвязанный например к RAR

Можно с помощью утилиты TCIMG и самой программой WinRar

Вместо RAR прописывается путь к архиватору или путь в TCIMG.ini в секции [Programs] ключ Rar

Переместить в другую панель "битые" -RAR архивы в текущей панели

Доступно только для пользователей

Переместить в другую панель "битые" и запароленные -RAR архивы в текущей панели

Доступно только для пользователей

[plus]
Возможно вместо *.rar можно вставлять и другие маски *.zip, *.7z ... не было времени попробовать. Или объединение масок... тогда можно будет сделать общий вариант...
[/plus]

... а вот и общий вариант:

Переместить в другую панель "битые" и запароленные архивы в текущей панели (проверяются архивы, поддерживаемые WinRar)

Доступно только для пользователей



 
SLAVCHIKSДата: Среда, 25.06.2014, 01:00 | Сообщение № 262
Рядовой

На сайте с: 13.04.2014
Город: Харьков
Сообщений: 5
Награды: 0
Репутация: 0
Попробовал - проверяет и создает рядом с файлами Errorlist, но не перемещает архивы, использую windows 8.1 - может в этом проблема?
 
Andrey_AДата: Среда, 25.06.2014, 08:20 | Сообщение № 263
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата SLAVCHIKS ()
создает рядом с файлами Errorlist, но не перемещает архивы

1. Может разница в WinRar и создаваемом ErrorList.txt - вышлите его посмотрю

2. Может паузу поставить, хотя не сильно должно влиять
Код

start=RAR||-IBCK||t||-r||"%p"*.*||-ilog"%pErrorList.txt"||-inul||-p0||&&wait pause=500 global sends="%pErrorList.txt"||formt<0!!(?m)(\w:\\.*\..+)> moves=GLOBALSENDS<t>||"%t" delsm="%pErrorList.txt"||1||upd<2>


3. Возможно запись в другую панель ограничено системой... попробуйте другую папку

4. Возможно не правильно перенеслись в вашу кнопку параметры... ещё раз сверьте

У меня нормально отрабатывает.


 
SLAVCHIKSДата: Среда, 25.06.2014, 22:51 | Сообщение № 264
Рядовой

На сайте с: 13.04.2014
Город: Харьков
Сообщений: 5
Награды: 0
Репутация: 0
Скачал утилиту по новой TCImg - переписал, строку ввел по новой - заработало, Спасибо!!!! Скажите, а можно как то разделить скрипт. какой ключ убрать, чтобы отдельно битые выделять, а отдельно под паролем, или после общей отсортировки переместить пароленные в другую папку из битых
 
Andrey_AДата: Четверг, 26.06.2014, 00:58 | Сообщение № 265
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата SLAVCHIKS ()
...после общей отсортировки переместить пароленные в другую папку из битых


Внесите в TCIMG.ini в [FormatUser]

Код
; заменить 2 смежные пустые строки на ¤¤ в log файле Winrar
U20=(.+)(\R\R)(.+)||$1¤¤$3
; найти строки содержащие фразу "неверный пароль" в log файле Winrar
U21=.+неверный пароль
; извлечь пути в log файле Winrar после преобразований 20 и 21
U22=(?m)(\w:\\.*\..+)¤¤


Тогда сработает кнопка:

Переместить в другую панель только запароленные архивы в текущей панели (проверяются архивы, поддерживаемые WinRar)

Доступно только для пользователей

[plus]
Наверно можно всё это объединить, в ближайшем будущем думаю родится общая кнопка по сортировке)
[/plus]



 
MrakobesДата: Воскресенье, 10.08.2014, 12:25 | Сообщение № 266
Полковник

На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
Награды: 2
Репутация: 2
добавление в файл hosts (c:\Windows\System32\drivers\etc\hosts) строк из буфера обмена, к примеру

127.0.0.1 activate.adobe.com

надеюсь все знают назначение этого))
 
Andrey_AДата: Понедельник, 11.08.2014, 18:34 | Сообщение № 267
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата Andrey_A ()
добавление в файл hosts


TCIMG 8.0

Добавить в конец содержимого файла host строку/и из буфера обмена

Доступно только для пользователей



 
MrakobesДата: Вторник, 12.08.2014, 19:25 | Сообщение № 268
Полковник

На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
Награды: 2
Репутация: 2
Цитата Andrey_A ()
Добавить в конец содержимого файла host строку/и из буфера обмена

[КОД:]
Выделить весь код
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
textt=%%WINDIR%%\System32\drivers\etc\hosts||$$@CRLFcliptext
%COMMANDER_PATH%\Wcmicons.dll,184
Добавить в конец содержимого файла host строку/и из буфера обмена

0
-1


не добавляется((( создается hosts.bak но в основном нет новых строк.
 
Andrey_AДата: Вторник, 12.08.2014, 21:03 | Сообщение № 269
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7186
Награды: 143
Репутация: 125
Аверин Андрей
Цитата Mrakobes ()
не добавляется((( создается hosts.bak но в основном нет новых строк.

Ещё раз проверил на версии 8.0, у меня работает. Возможно файл имеет спец атрибуты...
если имеет атрибут "только для чтения", то можно добавить параметр readonly<1>

Код
textt=%%WINDIR%%\System32\drivers\etc\hosts||$$@CRLFcliptext||readonly<1>


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

Код
attrf=%%WINDIR%%\System32\drivers\etc\hosts||-S textt=%%WINDIR%%\System32\drivers\etc\hosts||$$@CRLFcliptext||readonly<1> attrf=%%WINDIR%%\System32\drivers\etc\hosts||+S


 
MrakobesДата: Вторник, 12.08.2014, 23:54 | Сообщение № 270
Полковник

На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
Награды: 2
Репутация: 2
Цитата Andrey_A ()
Ещё раз проверил на версии 8.0, у меня работает. Возможно файл имеет спец атрибуты...
если имеет атрибут "только для чтения", то можно добавить параметр readonly<1>


нет, никаких атрибутов нету(( очень жаль( что еще покрутить? UAK отключен, я под администратором WIN 7, вобщем то проблема с занесением записей в hosts была всегда, ведь открыв блокнотом и внеся изменения еге все равно не сохранишь. надо присваивать другое имя. затем удалять первоначальный файл и т.д.

зы вот, попробовал следующее, создал файл hostsss и положил его рядом, изменил код textt=%%WINDIR%%\System32\drivers\etc\hostsss||$$@CRLFcliptext - все внеслось. Вообщем защита не дает, чего делать, если у Вас работает, значит что мне надо предпринять?


Сообщение отредактировал Mrakobes - Среда, 13.08.2014, 09:58
 
Поиск:

Интеллектуальные права и отказ от ответственности