ЗАКАЗ СКРИПТОВ
|
|
Andrey_A | Дата: Среда, 29.02.2012, 23:46 | Сообщение № 1 |
Генералиссимус
На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7191
Награды: 143
Репутация: 125
Аверин Андрей
|
ЗАКАЗ СКРИПТОВ
В этой теме Вы можете высказывать идеи о написании того или иного скрипта. Если Вы столкнулись с монотонной задачей, которую можно автоматизировать и не знаете как это сделать, Вы можете описать свою проблему здесь и возможно найдутся те, кто подскажет как её решить. Большая просьба чётко описывать задачу, от этого будет зависеть качество её решений
Готовые решения будут открепляться в отдельные темы
[info] Тема по большому счёту закрыта, т.к. я больше не пишу отдельных скриптов... Большинство скриптов для Total Commander вошли в функционал в утилиты TCIMG
[/info]
|
|
| |
Andrey_A | Дата: Понедельник, 26.05.2014, 18:11 | Сообщение № 256 |
Генералиссимус
На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7191
Награды: 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
|
Спасибо передать получилось, но оказывается он у меня в глубь папок не идёт только первой создаёт копии( Из за чего такое может быть не подскажите?
|
|
| |
Andrey_A | Дата: Понедельник, 26.05.2014, 18:40 | Сообщение № 258 |
Генералиссимус
На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7191
Награды: 143
Репутация: 125
Аверин Андрей
|
Цитата urievich ( ) может быть не подскажите? Я Вашу задачу не знаю, поэтому затрудняюсь ответить... Есть примеры копирования в теме КОЛЛЕКЦИЯ СКРИПТОВ
|
|
| |
urievich | Дата: Понедельник, 26.05.2014, 18:58 | Сообщение № 259 |
Рядовой
На сайте с: 26.05.2014
Город: Москва
Сообщений: 4
|
Огромное спасибо за помощь! Вот конечный результат может пригодиться) Код 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
|
Есть задача распаковать и рассортировать тысячи архивов, скачанных за пару лет. Проблема - попадаются иногда битые архивы, и попадаются с паролями - следовательно в первом и втором случае ТС останавливает автоматическую распаковку архивов, выводя предупреждение о битом архиве, и создает неполную распаковку (мусор) или просит пароль - это очень усложняет задачу и растятягивает по времени задачу, и портит немало нервов.
Нужен скрипт, подвязанный например к RAR или 7z, который бы выделенные архивы начал тестировать на целостность и на наличие установленного пароля и автоматом переместил такие файлы в папки созданные в той же директории BadArch и NeedPass. А также кнопки под такие скрипты.
Если у кого есть идеи, помогите пожалуйста!!!!
|
|
| |
Andrey_A | Дата: Вторник, 24.06.2014, 07:10 | Сообщение № 261 |
Генералиссимус
На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7191
Награды: 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
|
Попробовал - проверяет и создает рядом с файлами Errorlist, но не перемещает архивы, использую windows 8.1 - может в этом проблема?
|
|
| |
Andrey_A | Дата: Среда, 25.06.2014, 08:20 | Сообщение № 263 |
Генералиссимус
На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7191
Награды: 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
|
Скачал утилиту по новой TCImg - переписал, строку ввел по новой - заработало, Спасибо!!!! Скажите, а можно как то разделить скрипт. какой ключ убрать, чтобы отдельно битые выделять, а отдельно под паролем, или после общей отсортировки переместить пароленные в другую папку из битых
|
|
| |
Andrey_A | Дата: Четверг, 26.06.2014, 00:58 | Сообщение № 265 |
Генералиссимус
На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7191
Награды: 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
|
добавление в файл 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
Город: Сочи, Хоста
Сообщений: 7191
Награды: 143
Репутация: 125
Аверин Андрей
|
Цитата Andrey_A ( ) добавление в файл hosts
TCIMG 8.0
Добавить в конец содержимого файла host строку/и из буфера обмена
Доступно только для пользователей
|
|
| |
Mrakobes | Дата: Вторник, 12.08.2014, 19:25 | Сообщение № 268 |
Полковник
На сайте с: 08.08.2014
Город: Москва
Сообщений: 175
|
Цитата 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
Город: Сочи, Хоста
Сообщений: 7191
Награды: 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
|
Цитата Andrey_A ( ) Ещё раз проверил на версии 8.0, у меня работает. Возможно файл имеет спец атрибуты... если имеет атрибут "только для чтения", то можно добавить параметр readonly<1>
нет, никаких атрибутов нету(( очень жаль( что еще покрутить? UAK отключен, я под администратором WIN 7, вобщем то проблема с занесением записей в hosts была всегда, ведь открыв блокнотом и внеся изменения еге все равно не сохранишь. надо присваивать другое имя. затем удалять первоначальный файл и т.д.
зы вот, попробовал следующее, создал файл hostsss и положил его рядом, изменил код textt=%%WINDIR%%\System32\drivers\etc\hostsss||$$@CRLFcliptext - все внеслось. Вообщем защита не дает, чего делать, если у Вас работает, значит что мне надо предпринять?
Сообщение отредактировал Mrakobes - Среда, 13.08.2014, 09:58 |
|
| |