![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Копирование выделенного файла и после определенных действий перемещение обратно |
|
CMD/BAT - Копирование выделенного файла и после определенных действий перемещение обратно
|
Старожил Сообщения: 232 |
Всем доброго времени суток !
Нужна помощь, если моя задача вообще решаема. Нужно добавить в пакетный батник команды (или может как-то по другому). Сама задача: в любой папке на компьютере выделить файл ( в моем примере с расширением fb2, название может быть любым), запустить батник( батник будет лежать в папке в корне С) . Батник должен скопировать выделенный файл к себе в папку, произвести с ним определенные манипуляции и переместить этот файл обратно в папку из которой он был взят. Если поконкретней, хочу в малюсеньком файлменеджере JustManager добавить кнопку на запуск батника, в одном окне выделил файл и нажал кнопку батника, а дальше как я выше описал. Если это возможно, подскажите, пожалуйста, как это реализовать. Буду очень благодарен за помощь. |
|
Отправлено: 16:27, 06-01-2016 |
Ветеран Сообщения: 1759
|
Uragan66, Для этого в самом файловом менеджере должны быть предусмотрены такие возможности (как например в FAR). Это вопрос слишком узкий, наверное лучше спросить у разработчиков или на форуме JustManager.
|
Отправлено: 17:07, 06-01-2016 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 232
|
Профиль | Отправить PM | Цитировать Foreigner, да в самом файлменеджере ничего менять то не нужно, его настройки позволяют добавить кнопку запуска любой программы (а сделать батник exe файлом невелика проблема). Да и нужный файл в папку к батнику можно руками перетащить, а вот как его потом через батник вернуть в исходную папку.
Или нужно хотя бы создать папку возле батника и в нее перемещать файлы по очереди. Просто в папке с батником может находиться только один исходный файл FB2. После манипуляций с ним он на выходе получается out.fb2. Потом нужно его переместить в какую-то другую папку. Как в батнике прописать чтобы эти файлы при перемещении переименовывались как out1, out2 и т.д. ? |
Отправлено: 18:30, 06-01-2016 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Uragan66, Вы не поймёте. Вот это позволяет Far Manager:
Скрытый текст
╔══════════════════════════════════════════════════════════════════════════════════════════════════ Помощь - FAR ═══════════════════════════════════════════════════════════════════════════════════════════════════╗ ║ Метасимволы ║ ╟───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╢ ║ В ассоциированных командах, пользовательском меню и команде "Применить команду" могут использоваться специальные метасимволы: ▲ ║ ▓ ║ !! символ '!' ▓ ║ ! Длинное имя файла без расширения ▓ ║ !~ Короткое имя файла без расширения ▓ ║ !` Длинное расширение файла без имени (ext) ▓ ║ !`~ Короткое расширение файла без имени (ext) ▓ ║ !.! Длинное имя файла с расширением ▓ ║ !-! Короткое имя файла с расширением ▓ ║ !+! Аналогично !-!, но если длинное имя файла утеряно ▓ ║ после выполнения команды, Far восстановит его ▓ ║ !@! Имя файла, содержащего имена помеченных файлов ▓ ║ !$! Имя файла, содержащего короткие имена помеченных файлов ▓ ║ !& Список помеченных файлов ▓ ║ !&~ Список помеченных файлов с короткими именами ▓ ║ !: Текущий диск в формате "C:" ▓ ║ Для сетевых каталогов - "\\server\share" ▓ ║ !\ Текущий путь ▓ ║ !/ Короткое имя текущего пути ▓ ║ !=\ Текущий путь с учётом символических ссылок. ▓ ║ !=/ Короткое имя текущего пути с учётом символических ссылок. ▓ ║ ░ ║ !?<title>?<init>! ░ ║ При выполнении команды этот символ заменяется ░ ║ данными, введёнными пользователем. <title> и ░ ║ <init> - заголовок и исходный текст строки ░ ║ редактирования. ░ ║ ░ ║ Допускается использование нескольких таких символов ░ ║ в одной строке, например: ░ ║ ░ ║ grep !?Search for:?! !?In:?*.*!|c:\far\Far.exe -v - ░ ║ ░ ║ В <title> можно указать имя истории для строки <init>. ░ ║ В этом случае команда имеет следующий формат: ░ ║ ░ ║ !?$<history>$<title>?<init>! ░ ║ ░ ║ например: ░ ║ ░ ║ grep !?$GrepHist$Search for:?! !?In:?*.*!|Far.exe -v - ░ ║ ░ ║ Для отключения истории оставьте имя пустым. ░ ║ ░ ║ В <title> и <init> допускается использование прочих ░ ║ метасимволов, заключив их в круглые операторные скобки, ▼ ║ например: ▲ ║ ░ ║ grep !?В (!.!) найти:?! |Far.exe -v - ░ ║ ░ ║ !# Префикс "!#", указанный перед символом ассоциации ░ ║ файла, заставляет его (и все последующие) ссылаться ░ ║ на пассивную панель (см. примечание 4). ░ ║ Например, !#!.! обозначает имя текущего файла на ░ ║ пассивной панели. ░ ║ ░ ║ !^ Префикс "!^", указанный перед символом ассоциации ░ ║ файла, заставляет его (и все последующие) ссылаться ░ ║ на активную панель (см. примечание 4). ░ ║ Например, !^!.! обозначает имя текущего файла на ░ ║ активной панели, а конструкция !#!\!^!.! - файл на ░ ║ пассивной панели с таким же именем, как имя текущего ░ ║ файла на активной панели. ░ ║ ░ ║ Примечания: ░ ║ ░ ║ 1. Far при обработке метасимволов подставляется только то, что они означают (имя файла, расширение и т.д.). Никаких дополнительных символов (например, кавычек или фамилий разработчиков Far) не подставляется ░ ║ и вы должны это сделать сами, если потребуется. Например, если используемая в ассоциациях программа требует, чтобы имя файла было в кавычках, то вы должны писать program.exe "!.!", а не program.exe !.!. ▓ ║ ▓ ║ 2. Для ассоциаций !@! и !$! допускаются следующие модификаторы: ▓ ║ ▓ ║ 'Q' - заключать имена с пробелами в кавычки; ▓ ║ 'S' - использовать '/' вместо '\' в путях файлов; ▓ ║ 'F' - использовать полный путь; ▓ ║ 'A' - использовать кодовую страницу ANSI; ▓ ║ 'U' - использовать кодовую страницу UTF-8; ▓ ║ 'W' - использовать кодовую страницу UTF-16 (Little endian). ▓ ║ ▓ ║ Например, ассоциация !@AFQ! - имя файла, содержащего имена помеченных файлов с полным путём в кодовой странице ANSI; имена файлов, содержащие пробелы будут заключены в кавычки. ▓ ║ ▓ ║ 3. Метасимволы !@! и !$! в меню выбора (когда задано несколько ассоциаций) показываются как есть, преобразование происходит в момент исполнения команды. ▓ ║ ▓ ║ 4. Префиксы "!#" и "!^" работают как переключатели для ассоциаций. Действие этих префиксов распространяется до следующего подобного префикса. Например: ▓ ║ ▓ ║ if exist !#!\!^!.! diff -c -p !#!\!^!.! !\!.! ▓ ║ ▓ ║ "Если на пассивной панели существует такой же файл, как и на ▓ ║ активной под курсором, то показать расхождения между файлом ░ ║ на пассивной панели и файлом на активной панели, независимо ░ ║ от имени текущего файла на пассивной панели" ░ ║ ░ ║ 5. Если нужно передать программе имя с завершающей обратной чертой, используйте кавычки - "!"\. ▼ ║ Например, распаковать rar-архив в папку с таким же именем: ▓ ║ ▓ ║ winrar x "!.!" "!"\ ▓╚═══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝ Т.е., мы вписываем в UserMenu Far Manager'а путь к пакетному файлу, добавляем обрамлённые кавычками метасимволы "!\!.!", указывающие на текущий файл. Всё! Всё остальное зависит от не приведённого Вами содержимого пакетного файла. Update: Вам, для JustManager'а, надо будет добавить в меню пользовательскую команду, указав в «Command» Ваш пакетный файл, а в «Parameters» макрос «%FULL%». |
Отправлено: 02:22, 07-01-2016 | #4 |
Старожил Сообщения: 232
|
Профиль | Отправить PM | Цитировать Iska, Спасибо, вроде все получается.
Можно было бы использовать и Far, классный файл менеджер, но слишком громоздкий для моей задачи. |
|
Отправлено: 13:58, 07-01-2016 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Перемещение или копирование строк | vickt | Скриптовые языки администрирования Windows | 0 | 26-11-2015 15:03 | |
CMD/BAT - [решено] Копирование определенных файлов | LAKERS824 | Скриптовые языки администрирования Windows | 5 | 30-05-2014 08:35 | |
CMD/BAT - Поиск и копирование определенных файлов из папок | timbird | Скриптовые языки администрирования Windows | 13 | 22-02-2014 21:25 | |
[решено] Перехват F4 в проводнике Windows для открытия выделенного файла в заданном редакторе | Vadikan | AutoIt | 7 | 14-08-2011 23:14 | |
VBS/WSH/JS - [решено] Открытие выделенного файла в заданном приложении | Vadikan | Скриптовые языки администрирования Windows | 2 | 04-12-2010 18:23 |
|