Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Задачи на bat-файлах 8

Автор: Kirillhome
Дата сообщения: 21.02.2010 00:12
lorents
[more=Справка по 7z]-x (Exclude filenames) switch
Specifies which filenames or wildcarded names must be excluded from the operation.

Multiple exclude switches are supported.

Syntax
-x[<recurse_type>]<file_ref>

<recurse_type> ::= r[- | 0]
<file_ref> ::= @{listfile} | !{wildcard}

See -i (Include) switch description for information about option parameters.

Examples
7z a -tzip archive.zip *.txt -x!temp.*

adds to the archive archive.zip all *.txt files, except temp.* files.

Commands that can be used with this switch
a (Add), d (Delete), e (Extract), l (List), t (Test), u (Update), x (Extract with full paths)[/more]
Автор: lorents
Дата сообщения: 21.02.2010 00:28
Kirillhome

Цитата:
Справка по 7z

Еще раз большое спасибо
Автор: alin
Дата сообщения: 21.02.2010 05:51
mugil_cephalus

Цитата:
а чем плохо gui-решение свойства панели задач и меню пуск/скрывать неиспользуемые значки?

Значок, который появляется на месте скрытых иконок, о нём знает шеф.
Автор: wolf0425
Дата сообщения: 21.02.2010 09:30

Цитата:
Значок, который появляется на месте скрытых иконок, о нём знает шеф.

а задачам надо быть именно в трее, запретить туда минимизироваться - никак?
просто из таскбара замечательно скрывает cmdow.exe
Автор: alin
Дата сообщения: 21.02.2010 12:30
wolf0425

Цитата:
а задачам надо быть именно в трее, запретить туда минимизироваться - никак?

К сожалению, есть некоторые программы которые висят в трее и ни куда деваться не хотят до полного закрытия процесса.
Автор: lorents
Дата сообщения: 21.02.2010 13:42
Помогите пожалуйста разобраться:
Есть одна пака (назовем ее Temp), и мне надо за архивировать все файлы и подпапки (даже если они пустые) через KZIP.EXE, но при этом не за архивировать саму папку Temp

и еще один вопрос, как можно удалить все файлы и подпапки и папки Temp
с файлами вроде разобрался, но вот с папками ни как

Код: for /f "delims=" %%i in ('dir /b /s /a-d Temp\*.*') do (
    Del "%%~fi"
)
Автор: wolf0425
Дата сообщения: 21.02.2010 14:35

Цитата:
с папками ни как
папки удаляются командой rd, а не del, и твой for папки не перечисляет.

такой for там вообще лишний - все файлы в папке (включая вложенные) убиваются одной командой del:
del /s /a /q /f temp\*
но лучше сначала убивать подкаталоги с содержимым:
for /f "delims=" %%i in ('dir /b /a:d Temp\*') do rd /s /q Temp\%%i

но вообще если заморочек с правами на папку нет то гораздо проще убить целиком папку temp (со всем содержимым), а как понадобится снова - пересоздать. Заодно проверить что всё убилось - невредно, тебе же следующий файл потом распаковывать.


Цитата:
мне надо за архивировать все файлы и подпапки (даже если они пустые) через KZIP.EXE,
вроде не получится - KZIP подпапки в архив не пишет.
используй pkzipc или 7zip, не оригинальничай.


Автор: lorents
Дата сообщения: 21.02.2010 15:03
wolf0425

Цитата:
папки удаляются командой rd

спасибо, получилось

Цитата:
вроде не получится - KZIP подпапки в архив не пишет.

жалко

Цитата:
используй pkzipc или 7zip, не оригинальничай.

а можно ссылку офф. сайт pkzipc, я в гугле не смог найти
здесь дело даже не в оригинальности а кто лучше сжимает, Вы можете сами попробовать
для 7z я использую следующий код

Код: 7z.exe a -r -mm=Deflate -y -tzip -mpass=15 -mfb=258 -mx9 Zip\t001.zip .\Temp\* -x!Thumbs.db
deflopt.exe Zip\t001.zip
Автор: wolf0425
Дата сообщения: 21.02.2010 15:36

Цитата:
а не подскажите, как это сделать?

rd /s /q Temp || echo ошибка удаления
вместо echo можешь вписать goto на ветвление по ошибке.


Цитата:
deflopt - улучшает сжатия на пару 1кб, можно так сказать

Угу, особенно актуально на длинном файле.
смысл в такой оптимизации ты видишь? я - нет...


Цитата:
а можно ссылку офф. сайт pkzipc
http://pkware.com/
pkzipc - это консольная версия архиватора, где-то в недрах пакета.
Автор: lorents
Дата сообщения: 21.02.2010 15:48
wolf0425

Цитата:
запаковал семимегабайтный файл 7za - deflopt не ужал архив ни на байт.
запаковал тот же файл kzip - deflopt опять не ужал архив ни на байт, хотя сам архив стал на 0.034% короче и паковалось в 10 раз дольше.

вот это странно, у меня:
7z + deflopt = 2 156 470
kzip + deflopt=2 155 577
zipmix = 2 155 471
в временем согласен

Цитата:
pkzipc - это консольная версия архиватора, где-то в недрах пакета.

а вы его не тестировали сейчас?
Автор: wolf0425
Дата сообщения: 21.02.2010 16:04

Цитата:
вот это странно
это я DeflOpt.exe потерял в пути
DeflOpt действительно выедает килобайт, интересно ценой чего.


Цитата:
у меня:
7z + deflopt = 2 156 470
kzip + deflopt=2 155 577
разница 0.04% - больше чем у меня , но незначительно (у меня архив раза в полтора длиннее)


Добавлено:

Цитата:
а вы его не тестировали сейчас?
не, не люблю я его
winrar попробовал - он дает zip архив аж на 3% длиннее 7z, зато быстрее еще в 10 раз и его архив DeflOpt утаптывает только на 179 байт.
Автор: lorents
Дата сообщения: 21.02.2010 16:26
wolf0425
Ну ладно с этим
Большое спасибо за все!

Кстати, вот посмотрите, создал Images Optimization Suite - сборник программ для оптимизация файлов *.png и *.jpg без потерь качества. Благодаря вашей помощи.
с *.jpg могут быть проблемы
Я хотел попросить, если есть желание, вы бы не могли бы посмотреть батник, и если надо оптимизировать код, как здесь сделано?
Буду очень признателен
Автор: Dimau1981
Дата сообщения: 21.02.2010 16:39
Подскажите плиз как с помощью батника переименовать файлы с определенным расширением в файлы с рандомным именем и тем же разрешением?
Автор: wolf0425
Дата сообщения: 21.02.2010 16:54

Цитата:
переименовать файлы с определенным расширением в файлы с рандомным именем и тем же разрешением
например как-то так:

Код: @echo off
for %%a in ( *.txt ) do call :ren "%%a"
exit /b

:ren
set /a name = 1000000 + %random%
if exist "%name:~1%%~x1" goto :ren
ren "%~1" "%name:~1%%~x1"
Автор: Dimau1981
Дата сообщения: 21.02.2010 17:07
Спасибо большое, подходит.
Автор: lorents
Дата сообщения: 21.02.2010 18:14
Подскажите, пожалуйста, как можно разделить путь к файлу на составляющие
например:
C:\Program Files\Microsoft Silverlight\sllauncher.exe
составляющие
C:\Program Files\Microsoft Silverlight\ - путь к файлу
sllauncher -название файла
.exe - расширение
Автор: wolf0425
Дата сообщения: 21.02.2010 18:38
lorents call /?, или for /?
Автор: lorents
Дата сообщения: 21.02.2010 18:41
wolf0425
for
Автор: mugil_cephalus
Дата сообщения: 21.02.2010 18:53
wolf0425

Цитата:
просто из таскбара замечательно скрывает cmdow.exe

cmdow скроет из систрея не консольную, а гуевую прогу, вернее, ее значок, - например, у меня: пиктограмму punto switcher'a или norton password manager'a (cmdow не пользуюсь, но про ее ф-цию скрытия не консольного окна cmd.exe, а значка из трея слышу впервые) ??
по дефинициям: (у меня win 5.1 rus) , в win eng - таскбар - это панель задач, а не systray/notification area? тогда вопрос снят.

Добавлено:
alin

Цитата:
Значок, который появляется на месте скрытых иконок, о нём знает шеф.

ты имеешь ввиду тогда , - не скрыть значок, а удалить/восстановить его в систрее (такой сабж) ?
Автор: alin
Дата сообщения: 21.02.2010 21:26
mugil_cephalus

Цитата:
ты имеешь ввиду тогда , - не скрыть значок, а удалить/восстановить его в систрее (такой сабж) ?

Да, так будет лучше.
Автор: mugil_cephalus
Дата сообщения: 22.02.2010 06:18
alin
есть два варианта:
1) в gui настроить не показывать значок в систрее, как писал wolf0425

Цитата:
а задачам надо быть именно в трее, запретить туда минимизироваться - никак?

помета: в gui можно сделать вкл./выкл. показа значка в систрее (автоматизировать этот процесс - вкл./выкл. ) , но через код autoit - http://forum.ru-board.com/topic.cgi?forum=5&topic=29240
2) убить/снова запустить этот процесс

Цитата:
К сожалению, есть некоторые программы которые висят в трее и ни куда деваться не хотят до полного закрытия процесса.

если не секрет, какие программы нужно "удалить" из систрея - может есть способ шунтирования (обходного пути) трабла
p.s.
как настроить в gui не показывать значок в систрее - это надо в топик по конкретной проге - http://forum.ru-board.com/forum.cgi?forum=5
p.p.s.
может у этой проги есть консольная версия, и через нее можно управлять визуализацией пиктограммы - но для этого нужно знать для начала, с какой прогой имеем дело
Автор: vov4ka
Дата сообщения: 23.02.2010 12:15
Здравствуйте все! С праздником,мужики! Хорошенько всем отметить наше 23-е! Теперь о насущном Теперь по делу: на серваке стоит Комбат Вебморда, настроенный на 3 веб узла. На серваке висит 3 процесса w3wp. Когда 1 из w3wp переваливает за 150 МБ- начинаются тормоза. Даже очистка памяти w3wp от AnVir не помогает.При помощи DebugDiag 1.1 пробовал отловить ошибку,но он ничего не находит(может просто юзать его не умею)! Проблема решается убийством самого большого w3wp у перезапуском IIS. Пробовал даже IIS с Вебмордой переставлять-не помогает. Проблема возникает каждые 5-7 мин! Кто-нибудь, помогите написанием скрипта,который будет сидеть в системе и сам сканить и грохать самый большой процесс w3wp,а также перезапускать IIS!! .....или я не в ту тему запостил?
Автор: HuNsTeR
Дата сообщения: 23.02.2010 18:19
Всем Здасте.
Не знаю может где и обсуждался мой вопрос, но у меня просто нет времени просматривать все 8 частей этой темы.
завелся зверь на машине. В каждой папке создает файл Имя которого=имени папки и с расширением .ехе (C:\Program Files\Program Files.exe)
Так вот, можно ли создать batник чтоб автоматически находил такие файлы и удалял их и сохранил лог найденых и удаленных файлов?
З.Ы. С праздником!
Автор: mugil_cephalus
Дата сообщения: 23.02.2010 18:29
HuNsTeR
похожий:
начало - http://forum.ru-board.com/topic.cgi?forum=5&topic=29819&start=1600#5
конец - http://forum.ru-board.com/topic.cgi?forum=5&topic=29819&start=1660#9

Добавлено:
vov4ka
Уильям Станек - Командная строка Microsoft Windows http://rapidshare.com/files/89629093/Stanek_CLI_MS_Win.rar
7-ая глава и 6-ая
Автор: infopolis
Дата сообщения: 24.02.2010 08:12
Приветствую.

echo C:\PROGRA~1\WINRAR\RAR.EXE a -y -ep1 -m5 -ed -r proga %dirsrc% > tmp\crea_rar.cmd

dirsrc=D:\program\DrWeb\*.* - не работает
dirsrc=\program\DrWeb\*.* - работает

Двоеточие в значениях переменных запрещено?
Автор: mugil_cephalus
Дата сообщения: 24.02.2010 11:16
infopolis

Цитата:
Двоеточие в значениях переменных запрещено?

нет,
Цитата:
Команда SET не допускает использование знака равенства в имени
переменной среды.

см. set /?


добавь в батник:
Код: set
pause
Автор: wolf0425
Дата сообщения: 24.02.2010 17:48

Цитата:
думаю, rar.exe "спотыкается" на ":"
думаю что не должен - : обычный символ в полном имени, если бы спотыкался - Рошала бы давно завалили жалобами.
у меня RAR.EXE a -y -ep1 -m5 -ed -r proga T:\2\*.* никак не спотыкается

infopolis

Цитата:
Двоеточие в значениях переменных запрещено?
а чего спрашивать то? глазками посмотреть какой создается tmp\crea_rar.cmd - не быстрее?


Автор: mugil_cephalus
Дата сообщения: 24.02.2010 17:57
wolf0425

Цитата:
думаю что не должен - : обычный символ в полном имени, если бы спотыкался - Рошала бы давно завалили жалобами.

на практике rar.exe спотыкался на " http://forum.ru-board.com/topic.cgi?forum=62&topic=17154&start=2240#17
а это даже не спецсимвол
но это предположение, хотя, и логичное...


Цитата:
у меня RAR.EXE a -y -ep1 -m5 -ed -r proga T:\2\*.* никак не спотыкается

но эмпирически лучше чем схоластически
Автор: mugil_cephalus
Дата сообщения: 24.02.2010 20:26
а ограничение на длину строки не действует при "трубопроводе"?
у меня строка в коде - 873 символа с учетом pipeline'ov
Автор: mugil_cephalus
Дата сообщения: 25.02.2010 06:19
есть код:

Код: schtasks /create /ru admin /rp *** /sc hourly /mo 1 /tn AdobeARM /tr "%SystemDrive%\Program Files\Common Files\Adobe\ARM\1.0\AdobeARM.exe"
pause

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132

Предыдущая тема: XP не видит второй раздел на съемном USB-HDD


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.