Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Создание папок с именем файлов
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
den114



Joined: 03 Nov 2007
Posts: 25

Post (Separately) Posted: Sat Nov 03, 2007 16:44    Post subject: Создание папок с именем файлов Reply with quote

Небходим плагин для создания папок с тем же именем что и у выделенных файлов и перемещения этих файлов в соответствующие папки.

Перенесено из Плагинов.
Моторокер.
Back to top
View user's profile Send private message
DrShark



Joined: 21 Oct 2006
Posts: 895
Location: Kyiv, Ukraine

Post (Separately) Posted: Sat Nov 03, 2007 17:29    Post subject: Reply with quote

Из RU.TCKB
TCKB wrote:
Создание папки с частью имени выделенного файла с последующим перемещением


Q: Требуется создать папку с тем же именем, что имя у выделенного файла, а потом переместить этот файл в эту папку.

A:


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

' В параметрах вызова из TC должно быть прописано:
' %L
'=====================================================================

Code:
Dim TempFile, FSO, SelFile
Set TempFile =
CreateObject("Scripting.FileSystemObject").OpenTextFile(WScript.Arguments(0), 1)
Set FSO = CreateObject("Scripting.FileSystemObject")

Dim MoveFiles, FileName, FilePath, DashInName, NewFilePath, M1, M2, M3, M4
MoveFiles = ""
Do While Not TempFile.AtEndOfStream
Set SelFile = FSO.GetFile(TempFile.ReadLine)
FileName = SelFile.Name
FilePath = SelFile.ParentFolder
DashInName = InstrRev(FileName, "-")
If DashInName <> 0 Then
NewFilePath = FilePath & "\" & Trim(Left(FileName, DashInName - 1))
If Not FSO.FolderExists(NewFilePath) Then
FSO.CreateFolder(NewFilePath)
End If
If Not FSO.FileExists(NewFilePath & "\" & FileName) Then
FSO.MoveFile SelFile, NewFilePath & "\"
MoveFiles = MoveFiles + FileName & chr(13)
Else
M1 = MsgBox("Уже существует файл " & FileName & " в папке " & NewFilePath, vbOKOnly + vbExclamation, "Внимание!")
End If
Else
M2 = MsgBox("Имя исполнителя не выявлено", vbOKOnly + vbExclamation, "Внимание!")
End If
Loop
If MoveFiles <> "" Then
MoveFiles = Left(MoveFiles, Len(MoveFiles) - 1)
M3 = MsgBox("Перемещены файлы:" & chr(13) & MoveFiles, vbOKOnly + vbInformation, "Результат")
Else
M4 = MsgBox("Ни одного файла не перемещено" & chr(13) & MoveFiles, vbOKOnly + vbExclamation, "Внимание!")
End If
Set TempFile = Nothing
Set FSO = Nothing
Set SelFile = Nothing
Wscript.Quit

И ещё в разделе форума Автоматизация наверняка что-то есть, поищи.
Back to top
View user's profile Send private message
den114



Joined: 03 Nov 2007
Posts: 25

Post (Separately) Posted: Sun Jun 01, 2008 14:42    Post subject: Создание папок с именем файла Reply with quote

Здравствуйте !
Подскажите как сделать следующее: имеется множество файлов, необходимо создать папку для каждого файла (с таким же именем как у файла) и переместить файл в созданную папку.

 !  CaptainFlint:
Тема-дубликат объединена с предшественником.
Back to top
View user's profile Send private message
D1P



Joined: 20 Dec 2004
Posts: 2882
Location: Москва

Post (Separately) Posted: Sun Jun 01, 2008 22:47    Post subject: Reply with quote

Создание папки с частью имени выделенного файла с последующим перемещением
_________________
База знаний о Total Commander
Блог
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 5846
Location: Москва

Post (Separately) Posted: Sun Jun 01, 2008 23:15    Post subject: Reply with quote

den114
Какой смысл задавать вопросы, если не читать ответов?
http://forum.wincmd.ru/viewtopic.php?t=11199

Объединяю обе темы в одну и делаю предупреждение.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
swr



Joined: 07 Jun 2007
Posts: 39

Post (Separately) Posted: Mon Jul 07, 2008 16:33    Post subject: Reply with quote

Вот мне интерестно, а почему в строке

DashInName = InstrRev(FileName, "-")

FileName, "-", наверное писавший этот скрипт, делал это для какой то конкретной задачи, более универсальным ведь было бы не дефиз поставить а точку.

DashInName = InstrRev(FileName, ".")
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Mon Jul 07, 2008 17:38    Post subject: Reply with quote

swr
Это мой скрипт.
Только в данном счлучае ответ не соответствует вопросу.
Если помотреть заголовок скрипта, там написано:
Quote:
Создание папки с частью имени файла, перемещение в нее файла

Эта "часть имени" по тех. заданию запросившего скрипт пользователя - начало имени файла до символа "-" (см. самое начало темы Script Request). Смысловая же нагрузка наименования переменной не соответствует функционалу. Просто я переделывал другой свой скрипт без изменения наименований переменных.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
se7en



Joined: 12 Dec 2009
Posts: 2

Post (Separately) Posted: Sat Dec 12, 2009 17:26    Post subject: Reply with quote

Добрый день,

задам глупый вопрос - каким образом воспользоваться этим скриптом? FAQ не нашёл.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 8830
Location: Россия, Саратов

Post (Separately) Posted: Sat Dec 12, 2009 19:31    Post subject: Reply with quote

se7en
Читаем здесь.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
se7en



Joined: 12 Dec 2009
Posts: 2

Post (Separately) Posted: Sat Dec 12, 2009 20:33    Post subject: Reply with quote

Спасибо, всё сделал. Перетащил кнопку, но возникает ошибка в 10 строке, 16 символ Sad
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 8830
Location: Россия, Саратов

Post (Separately) Posted: Sat Dec 12, 2009 21:42    Post subject: Reply with quote

se7en
Скрипт, ссылка на который приведена в посте D1P (в TCKB), работает безукоризненно. При условии, что для кнопки указано не только имя файла скрипта в поле "Команда", но — в нижележащем поле — ещё и параметры, приведённые в шапке скрипта. Проверял оба варианта (создание папки в той же или в другой панели).
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Itar-Tass



Joined: 18 Jan 2009
Posts: 48

Post (Separately) Posted: Wed Dec 16, 2009 16:52    Post subject: Reply with quote

Тоже не работает на 3 разных компьютерах.
Картинка

Вот такая ошибка.Microsoft Visual C++
переустанавливал-не помогло.

Тестовый скрипт из папки scripthelper
RestartTotal.vbs работает.

 !  Avada:
Картинку заменил ссылкой.
Back to top
View user's profile Send private message
Batya



Joined: 15 Dec 2004
Posts: 2199
Location: Москва, Россия

Post (Separately) Posted: Wed Dec 16, 2009 17:23    Post subject: Reply with quote

se7en, Itar-Tass
Скрипты мои.
В каком именно возникает ошибка?
Приведите здесь не картинку ошибки (у меня она недоступна), а текст.
Чтобы получить текст ошибки, нужно нажать Ctrl+C при появлении диалогового окна - в буфере обмена окажется нужный текст.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 8830
Location: Россия, Саратов

Post (Separately) Posted: Wed Dec 16, 2009 17:38    Post subject: Reply with quote

Itar-Tass
Во-первых, скрин активного окна без постороннего мусора снимается клавишами Alt+PrintScreen.
Во-вторых, пункт 15 правил форума о допустимом размере картинок для кого писан? Замечание за нарушение правил.
В-третьих, от этой картинки вообще мало толку. Гораздо интереснее, как скрипт запускался? Кнопкой? Код в студию.
У меня при запуске кнопкой на основе скрипта с TCKB с правильно указанными параметрами — повторяю ещё раз — всё работает прекрасно.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Itar-Tass



Joined: 18 Jan 2009
Posts: 48

Post (Separately) Posted: Wed Dec 16, 2009 18:45    Post subject: Reply with quote

Quote:
Script: C:\Program Files (x86)\Total Commander\PLUGINS\Tools\tcwshelp_b10\Scripts\papki.vbs
Line: 2
Char: 16
Error: Синтаксическая ошибка
Code: 800A03EA
Source: Ошибка компиляции Microsoft VBScript

---------------------------
ОК



Команда "C:\Program Files (x86)\Total Commander\PLUGINS\Tools\tcwshelp_b10\Scripts\papki.vbs"

Параметры %L

C:\Program Files (x86)\Total Commander\PLUGINS\Tools\tcwshelp_b10\Scripts\

Файл знака C:\WINDOWS\System32\WScript.exe
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group