View previous topic :: View next topic |
Author |
Message |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 12, 2011 13:38 Post subject: |
|
|
BezDNaU
Поправил скрипт под заданное число урезаемых спереди компонентов.
Last edited by Flasher on Wed Oct 12, 2011 15:14; edited 1 time in total |
|
Back to top |
|
 |
BezDNaU
Joined: 31 May 2008 Posts: 65
|
(Separately) Posted: Wed Oct 12, 2011 15:05 Post subject: |
|
|
Flasher Спасибо, то что нужно.
А можно сделать перемещение вместо копирования?[/b] |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 12, 2011 15:13 Post subject: |
|
|
Ах..ты. Всё-таки Batya был прав. Сделал. |
|
Back to top |
|
 |
BezDNaU
Joined: 31 May 2008 Posts: 65
|
(Separately) Posted: Wed Oct 12, 2011 15:24 Post subject: |
|
|
Оно самое. Большое спасибо.
Last edited by BezDNaU on Wed Oct 12, 2011 20:42; edited 1 time in total |
|
Back to top |
|
 |
Riemann
Joined: 24 Sep 2008 Posts: 23
|
(Separately) Posted: Thu Oct 13, 2011 12:13 Post subject: |
|
|
Flasher wrote: | Riemann
А так?
Code: | ' Создание подкаталогов внутри выделенных папок по имени файла
' с заданным расширением и перемещение в них остальных файлов
' Параметры: %L <расширение>....
|
|
Усложняем немного, можно ли в "%L <расширение>" прописывать несколько расширений, которые не нужно трогать, остальное пусть кидается в папку созданную, или надо скрипт допиливать? |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Thu Oct 13, 2011 14:24 Post subject: |
|
|
Riemann wrote: | или надо скрипт допиливать? |
Code: | '====================================================================
' Создание подкаталогов внутри выделенных папок по имени файла
' с первым расширением в заданном фильтре исключений
' и перемещение в них остальных файлов
' Параметры: %L <фильтр расширений игнорируемых файлов через запятую>
' Пример: %L avi,mkv,mp4,flv,wmv
'====================================================================
With WScript.Arguments
If .Count = 0 Then Wscript.Quit
List = .Item(0)
Filt = .Item(1)
If .Count = 1 Then
MsgBox "Укажите 2 параметра!",_
vbExclamation, " Перемещение содержимого каталогов"
Wscript.Quit
End If
End With
C = InStr(Filt, ",")
If C > 0 Then Ext = Left(Filt, C-1) Else Ext = Filt
Set D = CreateObject("Scripting.Dictionary")
With CreateObject("Scripting.FileSystemObject")
Set TempFile = .OpenTextFile(List, 1)
Do While Not TempFile.AtEndOfStream
Fd = TempFile.ReadLine
If .FolderExists(Fd) Then
On Error Resume Next
For Each F in .GetFolder(Fd).Files
If StrComp(Ext, .GetExtensionName(F), 1) = 0 Then
NF = Left(F, Len(F)-Len(Ext)-1) & "\"
If Not .FolderExists(NF) Then .CreateFolder NF
Exit For
End If
Next
For Each Fi in Split(Filt,",")
D.Add LCase(Fi), ""
Next
For Each F in .GetFolder(Fd).Files
If Not D.Exists(LCase(.GetExtensionName(F))) Then .MoveFile F, NF
Next
End If
Loop
TempFile.Close
End With
Set D = Nothing
WScript.Quit |
|
|
Back to top |
|
 |
Riemann
Joined: 24 Sep 2008 Posts: 23
|
(Separately) Posted: Thu Oct 13, 2011 15:51 Post subject: |
|
|
Flasher wrote: | Riemann wrote: | или надо скрипт допиливать? |
|
как всегда на высоте  |
|
Back to top |
|
 |
Neptun79
Joined: 24 Jul 2010 Posts: 93
|
(Separately) Posted: Tue Dec 13, 2011 22:08 Post subject: |
|
|
В-общем то задача похожая , но немного более заковыристая :
Имеется набор файлов - на разных дисках (4 диска, один из них подключен как внешний через USB) , у каждого файла прописан комментарии - разумеется комментарии разные , комментарии прописаны по Ctrl+Z ? храняться в файле descript.ion - также файлики эти на разных дисках ...
Задача - по названию комментария(ев) создать сгенерировать папки с такими же названиями и переместить туда файлы/папки с такими же комментариями как название папки т.е с одинаковыми комментариями, т.е файлы придеться перемещать м/у разными дисками и в разные места.
Разумеется на каждом из 4 дисков есть по 80% свободного места.
Есть мысли как это сделать ? |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10417 Location: Россия, Саратов
|
(Separately) Posted: Wed Dec 14, 2011 10:12 Post subject: |
|
|
Neptun79
Вопрос по ходу дела: если на разных дисках (или хотя бы в разных каталогах) лежат одноимённые файлы с одинаковыми комментариями, каким образом их предполагается свести в одну папку, где в принципе может находиться только один файл с таким именем? Ещё и автоматически переименовывать или как? _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Neptun79
Joined: 24 Jul 2010 Posts: 93
|
(Separately) Posted: Wed Dec 14, 2011 13:15 Post subject: |
|
|
Avada wrote: | Neptun79
Вопрос по ходу дела: если на разных дисках (или хотя бы в разных каталогах) лежат одноимённые файлы с одинаковыми комментариями, каким образом их предполагается свести в одну папку, где в принципе может находиться только один файл с таким именем? Ещё и автоматически переименовывать или как? |
Разумеется у файлов разные имена но могут быть одинаковые комментарии ...
Пусть будет так - сначала создаётся например папка МУЗЫКА и с неё с разных дисков собираются файлы/папки с комментариями "музыка", затем другая папка, и т.д. , весь цимус в том как правильно организвать перемещение файлов/папок м/у дисками и внутри одного диска - м/у папками ... учитывая оставшееся свободное место. |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10417 Location: Россия, Саратов
|
(Separately) Posted: Wed Dec 14, 2011 13:24 Post subject: |
|
|
Neptun79
Ещё раз: предполагается, что совпадение (и, соответственно, конфликт) имён возникнуть тут вообще никогда не может? Что имена файлов с одинаковыми комментариями всегда разные?
И уже не единожды напоминалось, что избыточное цитирование на форуме запрещено.
Теперь следующий вопрос:
Neptun79 wrote: | Задача - по названию комментария(ев) создать сгенерировать папки с такими же названиями и переместить туда файлы/папки с такими же комментариями как название папки т.е с одинаковыми комментариями, т.е файлы придеться перемещать м/у разными дисками и в разные места. |
Сгенерировать где? Всё на одном диске? Но тогда при чём тут свободное место на остальных? _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Neptun79
Joined: 24 Jul 2010 Posts: 93
|
(Separately) Posted: Wed Dec 14, 2011 18:25 Post subject: |
|
|
Quote: | Ещё раз: предполагается, что совпадение (и, соответственно, конфликт) имён возникнуть тут вообще никогда не может? Что имена файлов с одинаковыми комментариями всегда разные? | именно так или если хотите - в предположении что это так, для того чтобы это исключить предварительно проведена работа - дубликаты найдены и удалены, в других случаях название файлов/папок отличается - хотя бы на знак точки (другой знак-запятую) т.е имена файлов не совпадают.
Quote: | Сгенерировать где? Всё на одном диске? Но тогда при чём тут свободное место на остальных? |
согласен я здесь не совсем точно описал, попробую более развёрнуто:
Сначала генерируется папка (например "музыка") на одном диске в неё перемещаются (вырезаются) все файлы/папки с одинаковыми комментари(ем)ями- "музыка" - в том числе с 2-3-4 других дисков, если место на этом диске еще есть - генерируется следующая папка (например-"софт"), в которую перемещаются (вырезаются) все папки/файлы с одинаковыми комментарием(ями) - "софт" и т.д. , пока свободное место на диске например С не заполняется, или если например на диске С осталось 1Гб свободного места , а туда нужно переместить файлы/папки с других дисков общим размером например 3Гб т.е больше чем оставшееся свободное место на диске С , то выводится сообщение что на диске С места нет, папка будет создана на диске D и процесс повторяется снова ...
т.е я бы назвал это "жонглированием" файлами/папками м/у дисками.
или как вариант можно начать заполнять сначала с диска С , затем попорядку остальные диски ...
или еще вариант - сначала подсчитывается сколько всего на 3-4 дисках общего свободного места, затем подсчитывается сколько занимают файлы/папки с разными комментариями - софт, музыка и т.д. , раздельно для каждого комментария - софт , музыка и т.п. , затем по возрастанию размера начинают перемещаться файлы/папки на диск С , сначала перемещаются в одну папку файлы/папки с одним комментарием, размер которых меньше всех остальных, затем по возрастающей, по исчерпании места или если в случае если общий размер файлов/папок превышает оставшееся место на диске С (например) на диск С в одну папку перемещается часть файлов/папок с одним комментарием , другая (оствшаяся ) часть перемещается на другой диск , т.е папка с комментарием делится на два диска, либо же - что предпочтительнее - чтобы не дробить папку - она создается на другом диске где есть достаточно места чтобы переместить туда все файлы/папки с одним комментарием ...
Quote: | избыточное цитирование на форуме запрещено. |
хорошо учту, цитировал полностью чтобы было понятно на какой(ие) вопрос(ы) я отвечаю.
[/quote] |
|
Back to top |
|
 |
SkYB
Joined: 04 Mar 2006 Posts: 23 Location: Киев
|
(Separately) Posted: Mon Dec 19, 2011 21:01 Post subject: |
|
|
Пипл я читал тему и как мне кажется, тут описывается похожее , но не совсем то что мне нужно. А именно.
Можно ли в командере, с помощью скрипта или ещё как, сделать следующее. Допустим есть несколько файлов и папок , которые нужно залить в одну папку и дать ей имя . Что нужно - чтобы как допустим в фотошопе - выделяешь нужные слои и нажимаешь Ctrl+G = и создаётся папка , куда перемещаются эти выделенные слои. Так вот в командере хочется тоже самое , но чтобы туда перемещались не только файлы , но и папки и , по хоткею аля "Ctrl+G" вылетал окошко с возможностью назвать создаваемую папку и после того как нажмёшь интер - все выделенные файлы и папки - перемещались в эту вновь созданную папу.
Такое в принципе возможно сделать ??? (хот кей в приоритете , чем кнопка) |
|
Back to top |
|
 |
Flasher

Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Dec 19, 2011 21:41 Post subject: |
|
|
SkYB wrote: | как мне кажется, тут описывается похожее | Нет. Оно описывается тут или тут. |
|
Back to top |
|
 |
sa
Joined: 29 Apr 2009 Posts: 2693
|
(Separately) Posted: Mon Dec 19, 2011 21:48 Post subject: |
|
|
SkYB wrote: | Такое в принципе возможно сделать ??? |
А если просто:
выделить нужные > нажать F6 > вписать имя_папки со слэшем в конце > нажать Enter? |
|
Back to top |
|
 |
|
|
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
|