[Plugin Request] File Duplicator
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Автоматизация Total Commander

#1: [Plugin Request] File Duplicator Author: DeYura PostPosted: Thu Sep 06, 2007 15:25
    —
Очень нужен плагин для создания дубликата файла (копии на всякий случай) по нажатию комбинации кнопок Ctrl+D.
А то уже надоело делать Copy, потом Paste - это довольно долго + изменяеться содержимое буфера обмена.

Зачем нужен: например вы редактируете конфиг или код программы, скопировали в буфер что-то, но потом подумали, что неплохо бы сохранить резервную копию файла. Делаете Copy, потом Paste, потом лезете обратно в файл и копируете данные, которые были в буфере перед этим - всё это муторно и долго.

Приблизительно хотелось чтобы плагин делал так:
исходный файл "file.txt"
продублированный "file_20070925233640.txt"
где "20070925233640" - дата и время подряд

Думаю создание такого плагина много времени не займёт, буду очень благодарен.

#2:  Author: D1PLocation: Тбилиси PostPosted: Thu Sep 06, 2007 15:51
    —
Зачем плагин? Вполне подойдёт скрипт на VBS+Script Helper. В RU.TCKB есть скрипт "Копирование в каталог с именем файла", тебе, скорее всего, подойдёт даже он. Если нет - в TCKB много примеров скриптов, они очень простые, и переделать один из них в точности под твои нужды труда не составит. Готового решения не даю.
Ссылка на TCKB: http://www.tckb.megabyte-web.ru/wiki/Оффлайн-версия_RU.TCKB

#3:  Author: fundukLocation: Санкт-Петербург PostPosted: Thu Sep 06, 2007 17:37
    —
2DeYura
Тебе намного облегчит жизнь программа-менеджер буфера обмена. Я пользуюсь CLCL, но она конфликтует с последними версиями FlashGet.

#4:  Author: BatyaLocation: Москва, Россия PostPosted: Thu Sep 06, 2007 18:35
    —
DeYura
А зачем через буфер? F5 или Shift+F5 не катят?

Если уж нужен скрипт, то вот VBS (Script Helper не используется):
Code:
'=======================================================
' Копирование выделенных файлов\папок в текущий каталог
'   с добавлением текущих даты и времени в имя:
' {Имя}_YYYYMMDDhhmmss.{Расширение}

' Параметры вызова из TC:
' %L
'=======================================================
Option Explicit
If WScript.Arguments.Count = 0 Then
  MsgBox "Не заданы параметры!", vbOKOnly + vbCritical, "Копирование"
  WScript.Quit
End If
Dim FSO, OTF, List, F
Set FSO = CreateObject("Scripting.FileSystemObject")
Set OTF = FSO.OpenTextFile(WScript.Arguments(0), 1, False)
List = OTF.ReadAll
OTF.Close
Set OTF = Nothing

For Each F In Split(List, vbNewLine)
  If FSO.FileExists(F) Then
    FSO.CopyFile F, FSO.GetFile(F).ParentFolder.Path & "\" &_
                    FSO.GetBaseName(F) & "_" & DateTime & "." &_
                    FSO.GetExtensionName(F)
  End If
  If FSO.FolderExists(F) Then
    FSO.CopyFolder Left(F, Len(F) - 1), Left(F, Len(F) - 1) & "_" & DateTime
  End If
Next
Set FSO = Nothing
WScript.Quit

Function DateTime
  Dim d, t
  d = Date
  t = Time
  DateTime = Year(d) & Right(0 & Month(d), 2) & Right(0 & Day(d), 2) &_
             Replace(t, ":", "")
End Function

#5:  Author: CaptainFlintLocation: Москва PostPosted: Thu Sep 06, 2007 18:49
    —
Переношу в Автоматизацию.

#6:  Author: DeYura PostPosted: Fri Sep 07, 2007 10:35
    —
Спасибо Batya

#7:  Author: DeYura PostPosted: Fri Sep 07, 2007 10:56
    —
Получилось запихнуть в панель ввиде кнопки.
Всё работает и даже с папками.

Подскажите, а как назначить ему горячую клавищу?

#8:  Author: D1PLocation: Тбилиси PostPosted: Fri Sep 07, 2007 11:33
    —
Quote:
Подскажите, а как назначить ему горячую клавищу?

Создать пользовательскую команду (есть в TC 7.0+), назначить на неё.



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group