View previous topic :: View next topic |
Author |
Message |
Mansour
Joined: 18 Jan 2006 Posts: 10
|
(Separately) Posted: Fri Feb 16, 2007 08:36 Post subject: Автоматическое создание папок |
|
|
есть некая дирректория с файлами.
существует ли возможность создать в этой дирректории папки с именами имеющихся в ней файлов... ну и запихать туда соответствующие файлы
существует, конечно, вариант создать из файлов архивы, а потом разархивировать с созданием отдельной папки для каждого архива...
но, это как-то того... не слишком технологично
есть более простые решения? |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2221 Location: Москва, Россия
|
(Separately) Posted: Fri Feb 16, 2007 10:43 Post subject: |
|
|
Нечто подобное я уже делал. Теперь немного проще:
Code: | '=====================================================================
' Создание папки по имени файла и перемещение в нее файла
' Может быть выделено несколько файлов
' Для создания папок в текущей панели
' в параметрах вызова из TC должно быть прописано:
' %L
' Для создания папок в противоположной панели
' в параметрах вызова из TC должно быть прописано:
' %L "%T"
'=====================================================================
If WScript.Arguments.Count = 0 Then
MsgBox "Не указаны параметры!", vbOKOnly + vbError, "Внимание!"
Wscript.Quit
End If
Dim TempFile, FSO, SelFile
Set FSO = CreateObject("Scripting.FileSystemObject")
Set TempFile = FSO.OpenTextFile(WScript.Arguments(0), 1)
Dim FileName, FilePath, DashInName, NewFilePath
Do While Not TempFile.AtEndOfStream
Set SelFile = FSO.GetFile(TempFile.ReadLine)
FileName = FSO.GetBaseName(SelFile)
FilePath = SelFile.ParentFolder
If WScript.Arguments.Count > 1 Then
NewFilePath = WScript.Arguments(1) & FileName
Else
NewFilePath = FilePath & "\" & FileName
End If
If Not FSO.FolderExists(NewFilePath) Then
FSO.CreateFolder(NewFilePath)
End If
If Not FSO.FileExists(NewFilePath & "\" & FileName) Then
FSO.MoveFile SelFile, NewFilePath & "\"
Else
MsgBox "Уже существует файл " & FileName & " в папке " & NewFilePath, vbOKOnly + vbExclamation, "Внимание!"
End If
Loop
Set TempFile = Nothing
Set FSO = Nothing
Set SelFile = Nothing
Wscript.Quit |
|
|
Back to top |
|
|
tpa204
Joined: 18 Dec 2004 Posts: 14
|
(Separately) Posted: Thu Apr 26, 2007 17:12 Post subject: подскажите а как воспользоватся этим скриптом |
|
|
подскажите а как воспользоватся этим скриптом. Функционал такой нужен, а скриптами никогда не пользовался |
|
Back to top |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Sat Apr 28, 2007 00:23 Post subject: |
|
|
Скопируй скрипт, создай текстовый файл, вставь туда скрипт, сохрани файл как blabla.vbs, перетащи его на панель кнопок тотала, измени получившуюся кнопку так, как сказано в начале скрипта (т.е. впиши нужные параметры - два варианта на выбор). После этого выделяй нужные файлы и нажимай кнопку.
ЗЫ: занятно, что я так и не смог найти в TCKB ответа на такой вопрос =(( |
|
Back to top |
|
|
D1P
Joined: 20 Dec 2004 Posts: 2973 Location: Тбилиси
|
|
Back to top |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Sat Apr 28, 2007 00:32 Post subject: |
|
|
Я про другой вопрос - как пользоваться скриптами? |
|
Back to top |
|
|
D1P
Joined: 20 Dec 2004 Posts: 2973 Location: Тбилиси
|
(Separately) Posted: Sat Apr 28, 2007 01:46 Post subject: |
|
|
Quote: | Я про другой вопрос - как пользоваться скриптами? |
О том, как пользоваться тем или иным скриптом почти всегда написано в той же статье, где и сам скрипт. Делать отдельную статью ради кратенькой инструкции "копируйте текст в файлик vbs и запускайте файлик" бессмысленно. _________________ База знаний о Total Commander
Блог |
|
Back to top |
|
|
tpa204
Joined: 18 Dec 2004 Posts: 14
|
(Separately) Posted: Sat Apr 28, 2007 09:35 Post subject: |
|
|
Претензию принимаю! в следующий раз залезу в базу знаний прежде чем спрашивать!
Спасибо! |
|
Back to top |
|
|
tpa204
Joined: 18 Dec 2004 Posts: 14
|
(Separately) Posted: Sat Apr 28, 2007 09:46 Post subject: |
|
|
Set TempFile = FSO.OpenTextFile(WScript.Arguments(0), 1)
на этой строчке скрипт запинается пишет файл не найден! Как лечить? |
|
Back to top |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Sat Apr 28, 2007 16:58 Post subject: |
|
|
D1P wrote: | О том, как пользоваться тем или иным скриптом почти всегда написано в той же статье, где и сам скрипт. | Да щаз!
В статье есть смысл - тогда можно из остальных статей соответствующую информацию убрать, если только использовние скрипта "обычно".
tpa204 wrote: | на этой строчке скрипт запинается пишет файл не найден! Как лечить? | Кавычки на %L поставить. |
|
Back to top |
|
|
tpa204
Joined: 18 Dec 2004 Posts: 14
|
(Separately) Posted: Tue May 01, 2007 13:35 Post subject: |
|
|
не сработало! Кавычки не помогли! м.быть такое? |
|
Back to top |
|
|
funduk
Joined: 16 Aug 2005 Posts: 1513 Location: Санкт-Петербург
|
(Separately) Posted: Tue May 01, 2007 15:35 Post subject: |
|
|
Скопируй сюда кнопку. (Правой кнопки мыши на ней нажми и выбери "Копировать"). Вставлять в тег code |
|
Back to top |
|
|
tpa204
Joined: 18 Dec 2004 Posts: 14
|
(Separately) Posted: Wed May 02, 2007 09:14 Post subject: |
|
|
TOTALCMD#BAR#DATA
"c:\Program Files\Total Commander\Rename&Move in it.vbs" "%L"
C:\WINDOWS\System32\WScript.exe
Rename&Move in it
c:\Program Files\Total Commander\
-1 |
|
Back to top |
|
|
Volniy
Joined: 15 Dec 2004 Posts: 585 Location: Местный
|
(Separately) Posted: Wed May 02, 2007 12:49 Post subject: |
|
|
tpa204 wrote: | TOTALCMD#BAR#DATA
"c:\Program Files\Total Commander\Rename&Move in it.vbs" "%L"
C:\WINDOWS\System32\WScript.exe
Rename&Move in it
c:\Program Files\Total Commander\
-1 |
Нужно перенести "%L" в поле "Параметры", а то в поле "Команда" эта переменная не расширяется в имя файла-списка. |
|
Back to top |
|
|
tpa204
Joined: 18 Dec 2004 Posts: 14
|
(Separately) Posted: Wed May 02, 2007 13:25 Post subject: |
|
|
Уважаю!
Работает! смотрю как на чудо! |
|
Back to top |
|
|
|