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 

[Script] Копирование файлов по списку
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Batya



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

Post (Separately) Posted: Mon Mar 30, 2009 13:02    Post subject: Reply with quote

barin
В файле FoldersList.txt каждой\му выделенной\му папке\файлу соответствует отдельная строка - папка назначения.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2584
Location: Большая деревня Москва

Post (Separately) Posted: Mon Mar 30, 2009 13:34    Post subject: Reply with quote

barin:
1. Чай, теперь твоя душенька довольна? Задача решена?
2. А можно ли было ее решить без внешних файлов? Например, так: на одной панели выделяем файлы/директории для копирования, на противоположной либо приемник, либо шаблон, и жмем кнопку.

Использование внешних файлов крайне неудобно, хотя в ряде случаев без них обойтись просто невозможно. Пока откроешь такой файл, пока отредактируешь, перетащишь пути (возможно, через буфер), пока сохранишь, так быстрее было бы врукопашную скопировать.

Файл настроек (ини) - другой дело. Он, как правило, редактируется редко. А тут, видимо, под каждую конкретную задачу надо свой файл делать.

Я потреял нить задачи в тот момент, когда Batya эту нить подхватил. Так что вопрос обоим: можно ли решить задачу, только выделяя файлы/директории на панелях?
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Batya



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

Post (Separately) Posted: Mon Mar 30, 2009 18:53    Post subject: Reply with quote

Вахмурка wrote:
2. А можно ли было ее решить без внешних файлов? Например, так: на одной панели выделяем файлы/директории для копирования, на противоположной либо приемник, либо шаблон, и жмем кнопку.

Если приемник будет один, то без проблем. Если приемников будет несколько, как в п.3 у barin-а, то нужно загнать в файл список выделенных файлов\папок на противоположной панели. Средствами TC этого сделать нельзя - Гислер не сделал параметра нападобие %L для пассивной панели Sad(( Для этих целей в vbs можно использовать соответствующий макрос из TCScript.Helper.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
barin



Joined: 28 Mar 2009
Posts: 5

Post (Separately) Posted: Fri Apr 03, 2009 16:29    Post subject: Reply with quote

спасибо! но к сожалению я смогу попробовать в понедельник - получаю новыйй комп и надеюсь он будет побыстрее предшественника )
кстати почему-то не присылается на мыло что написали ответ на форуме
Back to top
View user's profile Send private message
hawk777



Joined: 27 Dec 2008
Posts: 61

Post (Separately) Posted: Wed Feb 23, 2011 22:33    Post subject: Reply with quote

Batya, а как сделать чтобы Ваш скрипт не копировал файлы, а перемещал их?
Back to top
View user's profile Send private message
Batya



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

Post (Separately) Posted: Thu Feb 24, 2011 11:06    Post subject: Reply with quote

hawk777 wrote:
Batya, а как сделать чтобы Ваш скрипт не копировал файлы, а перемещал их?

Поменяй в скрипте, где встречается CopyHere (в 3-х местах), на MoveHere.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
hawk777



Joined: 27 Dec 2008
Posts: 61

Post (Separately) Posted: Thu Feb 24, 2011 11:33    Post subject: Reply with quote

Ошибка Sad
Code:
---------------------------
Windows Script Host
---------------------------
Сценарий:   C:\Program Files\Total Commander\Utils\WHS\spisok.vbs
Строка:   317
Символ:   3
Ошибка:   Недопустимый вызов или аргумент процедуры
Код:   800A0005
Источник:    Ошибка выполнения Microsoft VBScript

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

Параметры так надо прописывать %P%N d:\download\ 2 ?
Back to top
View user's profile Send private message
Batya



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

Post (Separately) Posted: Thu Feb 24, 2011 12:45    Post subject: Reply with quote

hawk777 wrote:
Параметры так надо прописывать %P%N d:\download\ 2 ?

Нет. Вместо %P%N нужно %L.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
hawk777



Joined: 27 Dec 2008
Posts: 61

Post (Separately) Posted: Thu Feb 24, 2011 13:50    Post subject: Reply with quote

Batya, Когда меняю на %L перемещается сам файл-список, а надо чтобы было так
Batya wrote:
* Копирование файлов\папок из файла-списка под курсором в указанную целевую папку:%P%N {целевая папка} [{режим копирования}]
Back to top
View user's profile Send private message
Batya



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

Post (Separately) Posted: Thu Feb 24, 2011 14:09    Post subject: Reply with quote

Ааа... Так список заранее задан. Тогда параметры %P%N d:\download\ 2 правильные.

Разбираемся с ошибкой.
1. Что у тебя в строке 317?
2. Разбей файл-список на несколько частей, чтобы в каждой части было всего несколько строк. Для файла-списка, по которому выдаётся ошибка, нужно определить, на какой строке скрипт ругается. Для этого...
3. Если у тебя в строке 317
Code:
  GetPath = FSO.GetAbsolutePathName(WSH.ExpandEnvironmentStrings(pPath))
втавь перед этой строкой строку с кодом
Code:
MsgBox """" & pPath & """"

Это добавит отладочное сообщение, которое будет показывать путь к файлу, на котром функция выдаёт ошибку.
4. Покажи здесь путь, выдающий ошибку.
_________________
Нет, я не сплю. Я просто медленно моргаю.
Back to top
View user's profile Send private message
hawk777



Joined: 27 Dec 2008
Posts: 61

Post (Separately) Posted: Thu Feb 24, 2011 17:02    Post subject: Reply with quote

1.
Code:
GetPath = FSO.GetAbsolutePathName(WSH.ExpandEnvironmentStrings(pPath))
Если разбить файл-список, он обрабатывается без ошибок. Правда в конце выскакивает окошко
Code:
 ---------------------------
Копирование из файла-списка
---------------------------
Ничего не удалось скопировать.


---------------------------
ОК   
---------------------------
и копируются не все файлы (из 30000--29000). думаю может из размера файла или большого количества строк (строк 130000 размер около 9 Мб). режу файл по 30000 строк, так и работаю Smile
Back to top
View user's profile Send private message
Альваро



Joined: 28 Feb 2012
Posts: 4

Post (Separately) Posted: Tue Feb 28, 2012 11:22    Post subject: Reply with quote

Здраствуйте, по ссылке ниже написан скрипт где он ищет и копирует файлы из списка.тхт, но я так понимаю путь к файлам должен иметь вид С:\папка1\папка2\папка3\НужныйФайл.exe.
Можно ли изменить данный код, чтобы список имел вид:
файл1*.exe
файл2*.exe
файл3*.exe
А скрипт нашел эти файлы в c:\база данных\ во всевозможных подкаталогах и скопировал в активное окно ТС.
Двух файлов с одинаковым именем но в разных папка быть не может, но могут быть файл1.ехе и файл1(new).ехе, нужны оба.
Заранее благодарен.

Ссылка


Last edited by Альваро on Tue Feb 28, 2012 12:15; edited 2 times in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Feb 28, 2012 12:03    Post subject: Reply with quote

Альваро wrote:
Извеняюсь за неудобство сплошного текста, постить ссылки не могу
К прочтению.

Альваро wrote:
где он ищет и копирует файлы из списка.тхт
Ничего он не ищет.
Альваро wrote:
чтобы список имел вид
Список со звёздочками? Таких имён не бывает. А если речь о задании маски, то в скрипте это роли не сыграет.
Альваро wrote:
но могут быть файл1.ехе и файл1(new).ехе, нужны оба.
Если есть файлы с такими названиеми, то они так и скопируются.

Last edited by Flasher on Tue Feb 28, 2012 13:39; edited 1 time in total
Back to top
View user's profile Send private message
Avada



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

Post (Separately) Posted: Tue Feb 28, 2012 12:15    Post subject: Reply with quote

Альваро
Безотносительно к последующей правке поста — замечание за нарушение правил форума (оверквотинг в размерах, переходящих все рамки приличий). См. также о цитировании скриптов здесь. Правильный порядок действий описан по ссылке в предыдущем посте. Можно было также упомянуть страницу, где дан в соответствующей теме скрипт. Можно было связаться с модератором через ЛС и заранее решить проблему. Но уж никак не то, что было сделано!

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



Joined: 28 Feb 2012
Posts: 4

Post (Separately) Posted: Tue Feb 28, 2012 13:58    Post subject: Reply with quote

Flasher, когда писал звездочки я имел в виду что написаное имя Файл1 может быть конечным, или файл1(new), заместо нью может быть любой коментарий к файлу, или же оба сразу в разных папках диска. Моя задача отличается от задачи решеной Batya, тем что неизвостно точное имя и местоположение, а только начало названия.
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 Previous  1, 2, 3, 4, 5, 6, 7, 8, 9  Next
Page 5 of 9

 
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