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 Previous  1, 2, 3 ... 8, 9, 10, 11, 12, 13  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Dimsok



Joined: 17 Aug 2014
Posts: 663

Post (Separately) Posted: Fri Sep 08, 2017 05:12    Post subject: Reply with quote

http://forum.wincmd.ru/viewpost.php?p=85158
Изменил, чтобы именовались с пробелами и без скобок. Только нужна подсказка, что поправить, чтобы если в пункте назначения уже был файл с таким же именем без номера, сразу именовался как "название файла 2", а не название файла 1"
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Fri Sep 08, 2017 05:58    Post subject: Reply with quote

Ошибку я так и не воспроизвёл, но с пробелом некорректность таки была.
 Обновлённый вариант:
Сделал, чтобы 00...№ нормально переименовывались.
Ну, если тебе не нужна юникодность, пляска от последнего номера с быстрым его нахождением, урезание совпадений, то нет проблем, пользуйся более простеньким вариантом.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Dimsok



Joined: 17 Aug 2014
Posts: 663

Post (Separately) Posted: Fri Sep 08, 2017 10:34    Post subject: Reply with quote

Там была какая-то ошибка с mid. Если удалить проблемную строку, то при наличии файла жаловалось, что файл уже имеется вместо того, чтобы именоваться более высоким номером.
Вот сейчас норм. стало, спасибо. А можно точно такой же вариант, но с перемещением? Тут в теме находил подобный скрипт, но чего-то не то.

Добавлено спустя 16 минут:

Хм, поторопился. Ошибка появляется (Line 63, Char 56, file already exists), если, к примеру, копирую файл down 2.png в папку, где есть файлы down 3-down 10. По идее должно создаваться down 11. Ну и хотелось бы, чтобы если в папке нет файлов более низкого значения, именовалось более низкими цифрами сначала, а потом по восходящей. Т.е при копировании down 4 не в down 5 сразу, а down, down 2, down 3 и т.д.

Добавлено спустя 29 минут:

Ещё странность. Вроде пробовал только, после down именовалось сразу down 2, а теперь снова стало сначала down 1.

Добавлено спустя 3 минуты:

Ещё одна странность. при копировании выделенных down 2, down 3 всё как нужно. оба файла копируются, а если копировать down, down 2, то копируется только down.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Fri Sep 08, 2017 17:10    Post subject: Reply with quote

Dimsok wrote:
А можно точно такой же вариант, но с перемещением?
Сделать-то можно, но я бы предпочёл что-то вроде этого. Там системное автопереименование.
Dimsok wrote:
копирую файл down 2.png в папку, где есть файлы down 3-down 10
Ошибки не вижу. Но с созданием есть проблемка. Исправим.
Dimsok wrote:
при копировании down 4 не в down 5 сразу, а down
Так скрипт работает от последнего номера, дыры латать не должен, т.к. искать объекты затруднительно.
Dimsok wrote:
Ещё странность.
Это не странность. У меня во всех скриптах счётчик начинается с единицы. Помню лишь раз, когда просили на двойку поправить. Единица - это первая копия, в то время как оригинал без счётчика. Такая логика.
Dimsok wrote:
а если копировать down, down 2, то копируется только down.
Хм. Странно, что сразу не заметил. Убёрем проблему.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Dimsok



Joined: 17 Aug 2014
Posts: 663

Post (Separately) Posted: Sat Sep 16, 2017 13:28    Post subject: Reply with quote

Flasher или забыл или сильно обленился Very Happy .
Через пару дней сильно понадобится сей скрипт.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sat Sep 16, 2017 13:48    Post subject: Reply with quote

Оба "или" мимо. Семейные обстоятельства подводят. Плюс ты не развил тему "за/против". Перемещение, например, я не вижу смысла добавлять, т. к. оно может касаться только одного экземпляра.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Dimsok



Joined: 17 Aug 2014
Posts: 663

Post (Separately) Posted: Sat Sep 16, 2017 13:59    Post subject: Reply with quote

Quote:
[table][tr][td]копирую файл down 2.png в папку, где есть файлы down 3-down 10[/td] [/tr][/table]Ошибки не вижу. Но с созданием есть проблемка. Исправим.

Quote:
[table][tr][td]а если копировать down, down 2, то копируется только down.[/td] [/tr][/table]Хм. Странно, что сразу не заметил. Убёрем проблему.


Добавлено спустя 7 минут:

И что значит " касаться одного экземпляра"? Например, я хочу скопировать (переместить) много файлов в каталог с совпадающими именами. Если скопированные удалялись бы из исходного каталога было бы видно всё ли перемещается или нет. А то скопируешь, удалишь потом, а окажется, они не все скопировались с переименованием.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sat Sep 16, 2017 16:19    Post subject: Reply with quote

Когда цитируешь, обосновывай для чего и смотри на результат (тут таких тегов нет).

Файлов-то много, но копий в случае перемещения нет. А здешние скрипты созданы для умножения копий. К тому же в тот же каталог перемещать вообще нет смысла.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Dimsok



Joined: 17 Aug 2014
Posts: 663

Post (Separately) Posted: Sat Sep 16, 2017 16:38    Post subject: Reply with quote

Привык кнопкой в опере цитировать.
А жал я на неё, потому что ты заговорил о ненужности перемещения, как будто кроме этого нечего менять.
А кто говорил про перемещение в тот же каталог. Мне например нужно из десятков папок где файлы имеют одинаковые названия все это расположить в одной
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sat Sep 16, 2017 16:58    Post subject: Reply with quote

Слабый аргумент. Я же не буду сперва одно, потом другое править, когда лучше за один присест всё вместе в коде сопоставить.

А для перемещения при одном экземпляре специфика счётчика — не такая уж и важная вещь. Разве кода по приведённой ссылке для этого недостаточно?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Dimsok



Joined: 17 Aug 2014
Posts: 663

Post (Separately) Posted: Sat Sep 16, 2017 17:29    Post subject: Reply with quote

Это ты про это: http://forum.wincmd.ru/viewpost.php?p=123747

Мне как раз специфика важна. Там он называет так, как делает коммандер, просто добавляет "copy", а надо чтобы именно возрастающими цифрами. Во-первых, что-то вроде "Copy (2)" не оч. эстетично, а во-вторых я привык искать файлы по первым буквам, а это что, всё будет по-одинаковому называться.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2563

Post (Separately) Posted: Tue Sep 19, 2017 10:05    Post subject: Reply with quote

Dimsok wrote:
называет так, как делает коммандер, просто добавляет "copy", а надо чтобы именно возрастающими цифрами.

Разве Total Commander при автоматическом переименовании копируемых файлов не использует возрастающие числа (в скобках)? Или речь не о нём?
Back to top
View user's profile Send private message
Dimsok



Joined: 17 Aug 2014
Posts: 663

Post (Separately) Posted: Tue Sep 19, 2017 14:02    Post subject: Reply with quote

sa
Ну наверное так, не помню. Помню, что там тоже в скобках что-то, а подстроить счётчик под себя нельзя. Было бы можно, вопросов не было бы, пользовался им.
Back to top
View user's profile Send private message
sa



Joined: 29 Apr 2009
Posts: 2563

Post (Separately) Posted: Tue Sep 19, 2017 15:53    Post subject: Reply with quote

Dimsok wrote:
Помню, что там тоже в скобках что-то

Для однозначности приведу строчку из Hist_rus.txt:
Quote:
- Кнопка "Опции" в диалоге копирования по F5: Новые опции для автоматического переименования копируемого файла либо файла назначения при конфликте имён. Имена будут выглядеть как filename(2).ext, filename(3).ext и т.д.
Back to top
View user's profile Send private message
elshad66



Joined: 25 Sep 2017
Posts: 1
Location: Philippines

Post (Separately) Posted: Tue Sep 26, 2017 00:26    Post subject: Reply with quote

Допустим некая прога A генерирует маску ,и сохраняет файл mask.png в определенной папке 1
B тоже время открыта прога Б ,и она использует другую маску mask.png ,из папки 2
Перетащить или заменить маску из папки 1 в папку 2,не получается т.к. маска уже используется прогой Б
приходиться в ручную переименновывать,,добавлять номер mask1.png,и тогда можно перетащить
Нужен BATник или CMD или еще что ,чтоб одним кликом ,перекинуть файл mask.png из папки 1 в папку 2 с добавлением номера,
в тот код что в начале темы подставил свои данные ,присвоил CMD.и положил рядом с маской ,кликаю на файл потом на cmd но не работает
может где то накосячил, в программировании не оч силен, поправьте код если не затруднит

Code:
@echo off &chcp 1251 >nul
rem  Копирование файлов и папок с добавлением счётчика
rem  Параметры кнопки: %L "%T"
rem  или: %L "d:\C:\cw-6510\"
rem  Автор: Tol!k

set "C:\cw-6510"
setlocal enableextensions
for /f "usebackq delims=" %%f in ("%~1") do call :p "%%f" "%%f."
exit /b

:p 
set "mask.png" &set "C:\cw-6510"
set "n=0"
call :loop 1000 &set /a n-=1000
call :loop 100 &set /a n-=100
call :loop 10 &set /a n-=10
call :loop 1
title %new%
if "mask.png"=="\" (
xcopy "mask.png" "C:\cw-6510" /i /s/e /k/r/h >nul
) else (
echo f| xcopy "mask.png" "C:\cw-6510" /k/r/h >nul
)
goto :eof

:loop
if "%n%"=="9999" (
title STOP
echo 9999 единиц в месте назначения,
echo недостаточно разрядности счётчика.
pause >nul &exit
)
set /a n+=%1
set "e=000%n%"
set "e=%e:~-4%"
set "new=%prist%_%e%%ext%"
if exist "%targ%\%new%" call :loop %1
goto :eof

файл mask.png лежит здесь
C:\Documents and Settings\Admin\Рабочий стол\egl\EGL3Desktop
перекинуть нужно в
C:\cw-6510
Back to top
View user's profile Send private message AIM Address
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 ... 8, 9, 10, 11, 12, 13  Next
Page 9 of 13

 
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