Страница 1 из 1
Создание цепочки папок из буфера обмена
Добавлено: Сб дек 31, 2016 14:46
Dimsok
Всех с Наступающим!
Задача: Создавать из буфера вида "c:\Program Files\Total Commander\" вложенные папки, т.е в данном случае будет 3 папки: С/Program Files/Total Commander. Можно, конечно через F7 но там надо будет убирать двоеточие, а мы в разделе автоматизации. C dircopy тоже нужного результата не добился, да и это тоже лишние манипуляции.
И хотелось бы ещё второй вариант - создавать папки в текущей панели не из буфера, а исходя из того, какой путь у текущей панели. То есть те 3 папки будут создаваться, если находишься в деректории "Total Commander"
Добавлено: Сб дек 31, 2016 21:03
Flasher
С наступающим!
Второе не понял. Т.е. C:\Program Files\Total Commander\C\Program Files\Total Commander ?
Добавлено: Сб дек 31, 2016 22:43
Dimsok
Второе - в текущем каталоге создавать структуру вложенных папок, последняя из которых будет та, в которой и будет это создаваться. К примеру, путь активной панели "C:\Program Files\Total Commander\", тогда в папке Total commander должно создаваться три папки: С, в ней Program Files, а в ней Total Commander.
Добавлено: Вс янв 01, 2017 01:42
Flasher
Инет пропадал. Так пойдёт?:
Код: Выделить всё
'======================= VBS =======================
' Cоздать в каталоге активной панели путь с цепочкой
' из буфера обмена при наличии, иначе из него самого
' Условие: путь запуска - пустой
'===================================================
R = "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\1407"
With CreateObject("WScript.Shell")
Dir = .CurrentDirectory : On Error Resume Next
A = .RegRead(R): If A > 0 Or Err.Number <> 0 Then .RegWrite R, 0, "REG_DWORD"
Path = Trim(CreateObject("htmlfile").ParentWindow.ClipboardData.GetData("text"))
If A > 0 Then .RegWrite R, A, "REG_DWORD"
On Error Goto 0 : If InStr(Path, ":\") <> 2 Then Path = Dir
Dirs = Replace(Path, ":", "")
With CreateObject("Shell.Application")
If VarType(.NameSpace(Dir & "\" & Dirs)) = 9 Then .NameSpace(Dir).NewFolder(Dirs)
End With : .SendKeys "^r" End With
Можно, конечно, и кнопками:
Код: Выделить всё
TOTALCMD#BAR#DATA
nircmd.exe execmd
set "P=%P"&&call md "%P%%P::=%%"&&nircmd.exe sendkeypress ctrl+r
wcmicons.dll,78
Продублировать цепочку активного каталога
%COMMANDER_PATH%\Utils\nircmd\
Код: Выделить всё
TOTALCMD#BAR#DATA
nircmd.exe execmd set "P=~$clipboard$"&&call md
"%P%%P::=%%"&&nircmd.exe sendkeypress ctrl+r
wcmicons.dll,77
Создать цепочку каталогов|из буфера в активной панели
%COMMANDER_PATH%\Utils\nircmd\
Добавлено: Вс янв 01, 2017 12:03
Dimsok
Пойдёт, спасибо.
Добавлено: Ср янв 25, 2017 10:07
Avada
Заголовок темы заменён более точным.