Страница 1 из 15

Автоматическое создание папок

Добавлено: Пт фев 16, 2007 07:36
Mansour
есть некая дирректория с файлами.
существует ли возможность создать в этой дирректории папки с именами имеющихся в ней файлов... ну и запихать туда соответствующие файлы :?:

существует, конечно, вариант создать из файлов архивы, а потом разархивировать с созданием отдельной папки для каждого архива...
но, это как-то того... не слишком технологично :)

есть более простые решения?

Добавлено: Пт фев 16, 2007 09:43
Batya
Нечто подобное я уже делал. Теперь немного проще:

Код: Выделить всё

'=====================================================================
' Создание папки по имени файла и перемещение в нее файла
' Может быть выделено несколько файлов

' Для создания папок в текущей панели
'   в параметрах вызова из 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

подскажите а как воспользоватся этим скриптом

Добавлено: Чт апр 26, 2007 17:12
tpa204
подскажите а как воспользоватся этим скриптом. Функционал такой нужен, а скриптами никогда не пользовался

Добавлено: Сб апр 28, 2007 00:23
funduk
Скопируй скрипт, создай текстовый файл, вставь туда скрипт, сохрани файл как blabla.vbs, перетащи его на панель кнопок тотала, измени получившуюся кнопку так, как сказано в начале скрипта (т.е. впиши нужные параметры - два варианта на выбор). После этого выделяй нужные файлы и нажимай кнопку.

ЗЫ: занятно, что я так и не смог найти в TCKB ответа на такой вопрос =((

Добавлено: Сб апр 28, 2007 00:30
D1P
ЗЫ: занятно, что я так и не смог найти в TCKB ответа на такой вопрос =((
http://tckb.megabyte-web.ru/content/view/209/100/

Добавлено: Сб апр 28, 2007 00:32
funduk
Я про другой вопрос - как пользоваться скриптами?

Добавлено: Сб апр 28, 2007 01:46
D1P
Я про другой вопрос - как пользоваться скриптами?
О том, как пользоваться тем или иным скриптом почти всегда написано в той же статье, где и сам скрипт. Делать отдельную статью ради кратенькой инструкции "копируйте текст в файлик vbs и запускайте файлик" бессмысленно.

Добавлено: Сб апр 28, 2007 09:35
tpa204
Претензию принимаю! в следующий раз залезу в базу знаний прежде чем спрашивать!
Спасибо!

Добавлено: Сб апр 28, 2007 09:46
tpa204
Set TempFile = FSO.OpenTextFile(WScript.Arguments(0), 1)

на этой строчке скрипт запинается пишет файл не найден! Как лечить?

Добавлено: Сб апр 28, 2007 16:58
funduk
D1P писал(а):О том, как пользоваться тем или иным скриптом почти всегда написано в той же статье, где и сам скрипт.
Да щаз!

В статье есть смысл - тогда можно из остальных статей соответствующую информацию убрать, если только использовние скрипта "обычно".
tpa204 писал(а):на этой строчке скрипт запинается пишет файл не найден! Как лечить?
Кавычки на %L поставить.

Добавлено: Вт май 01, 2007 13:35
tpa204
не сработало! Кавычки не помогли! м.быть такое?

Добавлено: Вт май 01, 2007 15:35
funduk
Скопируй сюда кнопку. (Правой кнопки мыши на ней нажми и выбери "Копировать"). Вставлять в тег code

Добавлено: Ср май 02, 2007 09:14
tpa204
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

Добавлено: Ср май 02, 2007 12:49
Volniy
tpa204 писал(а):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" в поле "Параметры", а то в поле "Команда" эта переменная не расширяется в имя файла-списка.

Добавлено: Ср май 02, 2007 13:25
tpa204
Уважаю!
Работает! смотрю как на чудо!