View previous topic :: View next topic |
Author |
Message |
HA3APET
Joined: 22 Feb 2010 Posts: 151
|
(Separately) Posted: Fri Aug 13, 2010 18:07 Post subject: |
|
|
ask-rus wrote: | Имеем скрипт для создания ярлыка на рабочий стол для текущего пользователя:
<…>
Необходимо улучшить скрипт для создания ярлыков для нескольких выделенных в TC файлов и папок. |
Это не главное, надо его усовершенствовать, так что бы в свойствах lnk ещё и рабочая папка была прописана, иначе имеем кучу разнообразных глюков. То есть можно считать такие lnk не рабочими, а следовательно и скрипт.
В усовершенствованном скрипте Batya, тот же косяк.
У меня lnk на раб стол создаются так, и рабочая папка естественно прописывается.
Code: | TOTALCMD#BAR#DATA
%COMMANDER_PATH%\nircmdc.exe
shortcut %P%N "~$folder.desktop$" "%O"
%COMMANDER_PATH%\Icons\lnk.ico
Создать ярлык на рабочем столе файла или папки под курсором
-1 |
Но к сожалению для одного файла под курсором, а не для выделенных файлов. Может можно усовершенствовать?
! | CaptainFlint: | Оверквотинг удалён. | |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Fri Aug 13, 2010 21:09 Post subject: |
|
|
HA3APET, попробуй
Code: | @echo off &chcp 1251 >nul
rem Создание ярлыков на рабочем столе для выделенных файлов/папок
rem Используется NirCmd
rem Параметры: %L
setlocal enableextensions
for /f "usebackq delims=" %%n in ("%~1") do call :n "%%n" "%%n."
goto :eof
:n
set "n=%~1"
if "%n:~-1%"=="\" (
"%COMMANDER_PATH%\nircmdc.exe" shortcut "%n:~0,-1%" "~$folder.desktop$" "%%~n2"
) else "%COMMANDER_PATH%\nircmdc.exe" shortcut %1 "~$folder.desktop$" "%%~n1"
| Не проверял |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Fri Aug 13, 2010 23:06 Post subject: |
|
|
HA3APET wrote: | надо его усовершенствовать, так что бы в свойствах lnk ещё и рабочая папка была прописана |
ОК. Сделал. Так подойдёт? _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Sat Aug 14, 2010 09:27 Post subject: |
|
|
Batya wrote: | ОК. Сделал. Так подойдёт? |
Рабочая пишется, подойдет.
Имеем кнопки:
Создать каталог > Новая папка, Новая папка (2) и т.д.
Создать файл > Текстовый документ.txt, Текстовый документ (2).txt и т.д.
Создать ярлык на Рабочий стол > Файл.lnk
Для завершения картины необходимы ещё две:
1. Бэкап выделенных в TC файлов (в текущий каталог, копии файлов с расширением *.bak), где-то была... Если знаете, ткните.
2. Копии выделенных в TC файлов и папок (в текущий каталог, Файл.txt > Копия Файл.txt, Каталог > Копия Каталог, расширения у файлов не меняются). _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
HA3APET
Joined: 22 Feb 2010 Posts: 151
|
(Separately) Posted: Sat Aug 14, 2010 09:51 Post subject: |
|
|
Batya
Спасибо, всё отлично работает. |
|
Back to top |
|
|
LocKtaR-o-DarK
Joined: 12 Aug 2005 Posts: 349 Location: Москва
|
(Separately) Posted: Sat Aug 14, 2010 13:01 Post subject: |
|
|
ask-rus wrote: | 1. Бэкап выделенных в TC файлов (в текущий каталог, копии файлов с расширением *.bak), где-то была... Если знаете, ткните. | тык _________________ |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Sat Aug 14, 2010 15:01 Post subject: |
|
|
LocKtaR-o-DarK
Простой вариант:
Code: | TOTALCMD#BAR#DATA
cmd /c title Копия... &
copy %S1 %S1.bak
totalcmd.exe,9
Создать бекап файла
1 |
Более продвинутый вариант, позволяет копировать файл под курсором с любыми атрибутами и т.д.:
Code: | TOTALCMD#BAR#DATA
cmd /c title Копия... &
(echo f|xcopy/y/c/h/r/k/g/z %S1 "%O_.%E")
totalcmd.exe,9
Копия оригинала
1 |
Для группы выделенных файлов:
Code: | TOTALCMD#BAR#DATA
cmd /c title Копия... &
for %%U in (%S) do echo f|xcopy/y/c/h/r/k/g/z %%U "%%~nU_%%~xU"
totalcmd.exe,9
Копия оригинала
1 |
Это то, что у тебя есть.
Нужна кнопка бэкапа группы выделенных файлов (последний вариант), но с дополнительным расширением *.bak (первый вариант), а не "_" после имени. В общем, совместить 1 и 3 коды. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Tue Aug 17, 2010 17:11 Post subject: |
|
|
Вернемся к MultiUPX.bat от MVV:
Code: | @echo off
:loop
if -%1==- pause && cls && goto :EOF
"%COMMANDER_PATH%\SOFT\UPX\upx.exe" --best --lzma --compress-icons=0 %1
shift
goto loop |
Как быть с пробелами в именах? Сегодня попался-таки такой экзешник - не пакует. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
LocKtaR-o-DarK
Joined: 12 Aug 2005 Posts: 349 Location: Москва
|
(Separately) Posted: Thu Aug 19, 2010 13:37 Post subject: |
|
|
ask-rus
хорошо, распишу подробнее:
добавление расширения .bak к имени файла с расширением для выделенных объектов в панели
Code: | TOTALCMD#BAR#DATA
cmd /c title Копия... &
for %%U in (%S) do echo f|xcopy/y/c/h/r/k/g/z %%U "%%~nU_%%~xU.bak"
totalcmd.exe,9
Копия оригинала
1 |
только к имени файла
Code: | TOTALCMD#BAR#DATA
cmd /c title Копия... &
for %%U in (%S) do echo f|xcopy/y/c/h/r/k/g/z %%U "%%~nU.bak"
totalcmd.exe,9
Копия оригинала
1 |
работа с UPX, проблем с именами не было... _________________ |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Thu Aug 19, 2010 14:37 Post subject: |
|
|
LocKtaR-o-DarK
Работают. Первый вариант - мой вариант. Неплохо бы перенести оба в копилку. LocKtaR-o-DarK wrote: | работа с UPX, проблем с именами не было... |
Там файл под курсором, а тут пакетная упаковка всех выделенных.
Пытался переделать и ничего не вышло, не могу понять принцип для кнопки:
Файл.ico > Копия Файл.ico
Копия Файл.ico > Копия Копия Файл.ico _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Fri Aug 20, 2010 20:48 Post subject: |
|
|
Дошло:
%%~nU - имя;
%%~xU - расширение.
Получил:
Code: | TOTALCMD#BAR#DATA
cmd /c title Копия... &
for %%U in (%S) do echo f|xcopy/y/c/h/r/k/g/z %%U "Копия %%~nU%%~xU"
totalcmd.exe,9
Копия файла
1
-1
|
_________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
Serge Yolkin
Joined: 25 Jul 2009 Posts: 664
|
(Separately) Posted: Sat Aug 21, 2010 00:56 Post subject: |
|
|
ask-rus
Модификации переменных вида %~... описаны в спрвке к команде forКстати, это верно и для обработки параметров командной строки %1... кроме %* |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Sat Aug 28, 2010 15:57 Post subject: |
|
|
Имеем кнопку создания списка файлов в текущую панель с дозаписью:
Code: | TOTALCMD#BAR#DATA:
%comspec%
/c type %L>>"filelist.lst"
shell32.dll,134
Создать список файлов c дозаписью
1
-1 |
Необходимо, чтобы очередная дозапись происходила после пропущенной строки, пример:
filelist.lst wrote: | d:\Pictures\Full HD_1\00040_flying_1920x1200.jpg
d:\Pictures\Full HD_1\00093_baldeagle_2560x1600.jpg
d:\Pictures\Full HD_1\00144_rose_2560x1600.jpg
d:\Pictures\Full HD_1\00146_whiterose_2560x1600.jpg
d:\Pictures\Full HD_1\00227_blingbling_2560x1600.jpg
d:\Pictures\Full HD_1\00235_thebluemarble_1920x1200.jpg
d:\Pictures\Full HD_1\00241_daito_1600x1200.jpg
d:\Pictures\Full HD_1\00244_tracks_1920x1200.jpg
d:\Pictures\Full HD_1\00261_smartos_2560x1600.jpg
|
Таким образом легче ориентироваться по спискам. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Sat Aug 28, 2010 16:41 Post subject: |
|
|
ask-rus
Параметры: Code: | /c (if exist "filelist.lst" echo,>>"filelist.lst")&type %L>>"filelist.lst" |
Last edited by Tol!k on Sat Aug 28, 2010 18:10; edited 1 time in total |
|
Back to top |
|
|
|