imho.ws |
|
04.02.2003, 02:28 | # 1 | ||
::VIP::
Регистрация: 30.04.2002
Адрес: Israel
Пол: Male
Сообщения: 7 090
|
BAT File для переименования файлов
Есть 250 файлов , надо файлик bat чтоб переименовал окончания Jpg в rar
:xex:
__________________
Дорогие оптимист, пессимист и реалист. Пока вы спорили о стакане с водой. Я его выпил. Опортюнист.
|
||
04.02.2003, 05:18 | # 2 |
::VIP::
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260
|
Если интересует только конкретный случай то просто:
ren *.jpg *.rar Если все же интересно как по другому: for %f in (*.jpg) do ren %f *.rar (если вызывать НЕ из батника, а из коммандной строки то надо писать %%f) P.S. Нет, наоборот. %%f это когда из батника.
__________________
sapienti sat. Последний раз редактировалось denver; 03.12.2004 в 15:48. |
04.02.2003, 14:16 | # 4 |
::VIP::
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260
|
Isalex
Если у тебя ХР то найди на диске с виндой файл ntcmds.chm там все в принципе + расширенные комманды для ХР (могу его русский тебе заслать если надо). А вообще все эти комманды тянутся еще из MS DOS и таких книжек в инете уже практически нет. Вот здесь нашел далеко не полный список комманд. А вообще описание любой комманды можно посмотреть в коммандной строке запустив: комманда /?
__________________
sapienti sat. |
05.02.2003, 06:48 | # 5 |
::VIP::
Регистрация: 29.09.2002
Адрес: Очень далеко
Сообщения: 403
|
Спасибо, но меня в принципе интересуют не столько сами команды, сколько обозначеня переменных и разных ключей, как например - %f , %1 , %PATH%.
В принципе, все на интуйтивном уровне понимается, но хотельсь бы иметь более подробное описание этих вещей.
__________________
Меняю проигрыватель на выигрыватель. |
05.02.2003, 07:40 | # 6 |
::VIP::
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260
|
Isalex
К сожалению литературы конкретно по переменным среды имхо нигде нет. Кроме как в мануалах по всем коммандам. Потому что имхо это можно описать всего на двух страницах если уже совсем подробно расжевывать. Вкратце: %1, %2, ... это переменные содержащие параметры запуска батника (параметры следуют в коммандной строке за батником, разделяются пробелами и могут быть чем угодно, числом, именем файла и т.д.) %temp%, %windir% ... - переменные среды которые задаются в autoexec.bat (или еще где) коммандой set %windir%="c:\windwos\" %f, %b, %a - все остальные неиспользуемые "регистры" используются в бат файлах или просто из коммандной строки с коммандой for errorlevel - обычно программы (либо батники если в них есть комманды set errorlevel=0) возвращают 0 в случае удачного завершения и другое число если нет. Для проверки короче, например: scandisk c: /f if errorlevel==1 goto error scandisk d:/f if errorlevel==1 goto error goto exit :error echo Произошла ошибка, fuck off :exit
__________________
sapienti sat. Последний раз редактировалось denver; 05.02.2003 в 07:45. |
29.03.2003, 07:38 | # 9 |
Administrator
Регистрация: 13.05.2002
Сообщения: 11 227
|
Da. Glawnoe ubrat iz sistemi draiwer krivie_ruchki.sys ;-))).
__________________
Осколки прошлого, как снег, закрутит ураган времён, В ушедший день для нас навек, обрушив мост, Оставив в наших душах след, тьма уплывёт за горизонт, И в чистом небе вспыхнет свет, свет новых звёзд. |
22.05.2003, 11:57 | # 10 | ||
Member
Регистрация: 18.10.2002
Адрес: 50°53’ с.ш. 42°51’ в.д.
Пол: Male
Сообщения: 353
|
Цитата:
for %f in (*.jpg) do ren "%f" *.rar (кавычки добавлены для того, чтобы обрабатывались файлы, имена которых содержат пробелы) Цитата:
for %%f in (*.jpg) do ren "%%f" *.rar А если надо не переименовать все jpg в rar, а сжать каждый jpg в свой rar (что логичнее), то команда принимает вид: for %%f in (*.jpg) do rar a "%%f.rar" "%%f"
__________________
LisT [#ls -AcFlt --color=never --full-time] |
||
25.05.2003, 13:25 | # 11 |
Guest
Сообщения: n/a
|
Великий скрипт великого Ларри Волла (Larry Wall).
Код:
eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' & eval 'exec perl -S $0 $argv:q' if 0; $0 =~ s#.*/([^/]+)$#$1#; if (@ARGV < 2) { print "Usage:\n\t$0 <perl_expression> <files...>\n\n"; print "Examples:\n"; print "\t$0 's/\.orig\$//' *.orig\n"; print "\t$0 'y/A-Z/a-z/ unless /^Make/' *\n"; print "\t$0 '\$_ .= \".bad\"' *.f\n"; print "\t$0 'print \"\$_: \"; s/foo/bar/ if <stdin> =~ /^y/i' *\n"; exit; } $op = shift; for (@ARGV) { $was = $_; eval $op; die $@ if $@; rename($was,$_) unless $was eq $_; } |
28.10.2004, 12:04 | # 14 |
Newbie
Регистрация: 22.07.2004
Адрес: Брест
Сообщения: 26
|
Кстати, для тех, кто не знает. И в Win2k, и в WinXP есть команда "help".
А если нужен help по конкретной команде, например, "set", то нужно вызвать "help set". Ну оччень подробно все расписано. А в русской винде даже по-русски.
__________________
Spel chekers, hoo neeeds em? |
03.12.2004, 14:54 | # 17 |
Junior Member
Регистрация: 23.09.2004
Сообщения: 105
|
Вопрос по комманду exist
Шото не работает команда exist (проверяет наличие файлов) в w2k , шо делать не пойму ???, сам батник 100% рабочий (под 98 виндой правда)
__________________
...мысли думают нас Последний раз редактировалось i1doc; 03.12.2004 в 15:11. |
03.12.2004, 15:59 | # 19 |
Junior Member
Регистрация: 23.09.2004
Сообщения: 105
|
спасибо шо обяснили убогому :)
строка такая
if exist E:\путь\*.* h:\папка\програмка.exe весь фикус в том что по барабану, есть файлы, или нет - програмка запускается ------------------------------- В прцессе разборов выяснилось то если вместо E:\путь\*.* прописать E:\путь\*.txt- то все работает вариант E:\путь\*.??? - тож не работает, как же маску задать млин - файлы то все нужно ловить.
__________________
...мысли думают нас Последний раз редактировалось i1doc; 03.12.2004 в 18:08. |
03.12.2004, 22:56 | # 20 |
::VIP::
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260
|
i1doc
Приведи строку точнее, что вызываешь. Только не по памяти, а именно то что не работает. Мало ли. Если это в батнике то строку из батника плиз, лучше весь. ------------------------------------------------- Ха! Догнал. Под *.* попадают также каталоги, включая . и .. (т.е. текущий каталог и родительский). Ну вобщем if exist *.* сработает даже в пустом каталоге. Как решить ща подумаю... ------------------------------------------------- Хм.. может и не самое лакоичное решение но работает (во всяком случае это уже во всех версиях винды должно). Пример батника: Код:
@echo off for %%f in (%1\*.*) do goto dosomething exit :dosomething echo В каталоге "%1" содержится как минимум один файл
__________________
sapienti sat. |