imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Компьютеры > Программирование
Опции темы
Старый 04.02.2003, 02:28     # 1
DJLOVE
::VIP::
 
Аватар для DJLOVE
 
Регистрация: 30.04.2002
Адрес: Israel
Пол: Male
Сообщения: 7 090

DJLOVE Бог с наворотамиDJLOVE Бог с наворотами
DJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотами
BAT File для переименования файлов

Есть 250 файлов , надо файлик bat чтоб переименовал окончания Jpg в rar

:xex:

Комментарий Модератора:
Borland:
Дополнительно:
Важно: Автоматическое переименование группы файлов/папок
__________________
Дорогие оптимист, пессимист и реалист. Пока вы спорили о стакане с водой. Я его выпил.
Опортюнист.
DJLOVE вне форума  
Старый 04.02.2003, 05:18     # 2
denver
::VIP::
 
Аватар для denver
 
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260

denver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуру
Если интересует только конкретный случай то просто:
ren *.jpg *.rar

Если все же интересно как по другому:
for %f in (*.jpg) do ren %f *.rar
(если вызывать НЕ из батника, а из коммандной строки то надо писать %%f)

P.S. Нет, наоборот. %%f это когда из батника.
__________________
sapienti sat.

Последний раз редактировалось denver; 03.12.2004 в 15:48.
denver вне форума  
Старый 04.02.2003, 11:28     # 3
Isalex
::VIP::
 
Аватар для Isalex
 
Регистрация: 29.09.2002
Адрес: Очень далеко
Сообщения: 403

Isalex Известность не заставит себя ждать
to Denver

а где можно достать систакс всех команд Batch???
Или хотябы подробное описание части из них???
__________________
Меняю проигрыватель на выигрыватель.
Isalex вне форума  
Старый 04.02.2003, 14:16     # 4
denver
::VIP::
 
Аватар для denver
 
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260

denver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуру
Isalex
Если у тебя ХР то найди на диске с виндой файл ntcmds.chm там все в принципе + расширенные комманды для ХР (могу его русский тебе заслать если надо). А вообще все эти комманды тянутся еще из MS DOS и таких книжек в инете уже практически нет. Вот здесь нашел далеко не полный список комманд. А вообще описание любой комманды можно посмотреть в коммандной строке запустив:
комманда /?
__________________
sapienti sat.
denver вне форума  
Старый 05.02.2003, 06:48     # 5
Isalex
::VIP::
 
Аватар для Isalex
 
Регистрация: 29.09.2002
Адрес: Очень далеко
Сообщения: 403

Isalex Известность не заставит себя ждать
Спасибо, но меня в принципе интересуют не столько сами команды, сколько обозначеня переменных и разных ключей, как например - %f , %1 , %PATH%.
В принципе, все на интуйтивном уровне понимается, но хотельсь бы иметь более подробное описание этих вещей.
__________________
Меняю проигрыватель на выигрыватель.
Isalex вне форума  
Старый 05.02.2003, 07:40     # 6
denver
::VIP::
 
Аватар для denver
 
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260

denver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуру
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.
denver вне форума  
Старый 15.03.2003, 20:03     # 7
vadian
Full Member
 
Аватар для vadian
 
Регистрация: 23.02.2003
Адрес: X-Cite
Сообщения: 625

vadian Луч света в тёмном царствеvadian Луч света в тёмном царствеvadian Луч света в тёмном царствеvadian Луч света в тёмном царствеvadian Луч света в тёмном царствеvadian Луч света в тёмном царстве
Тока Windows XP команду move не поддерживает. Я из-за этой бодяги часа 4 один раз потерял...
__________________
Послушай женщину и сделай наоборот... А потом переверни ее и сделай, как она хочет.
vadian вне форума  
Старый 15.03.2003, 20:27     # 8
denver
::VIP::
 
Аватар для denver
 
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260

denver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуру
vadian
У кого не поддерживает, а у кого и поддерживает (если hands.dll настроить)
__________________
sapienti sat.
denver вне форума  
Старый 29.03.2003, 07:38     # 9
helldomain
Administrator
 
Аватар для helldomain
 
Регистрация: 13.05.2002
Сообщения: 11 227

helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
helldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиургhelldomain Демиург
Da. Glawnoe ubrat iz sistemi draiwer krivie_ruchki.sys ;-))).
__________________
Осколки прошлого, как снег, закрутит ураган времён,
В ушедший день для нас навек, обрушив мост,
Оставив в наших душах след, тьма уплывёт за горизонт,
И в чистом небе вспыхнет свет, свет новых звёзд.
helldomain вне форума  
Старый 22.05.2003, 11:57     # 10
list_id
Member
 
Аватар для list_id
 
Регистрация: 18.10.2002
Адрес: 50°53’ с.ш. 42°51’ в.д.
Пол: Male
Сообщения: 353

list_id Популярный человек на этом форумеlist_id Популярный человек на этом форумеlist_id Популярный человек на этом форумеlist_id Популярный человек на этом форумеlist_id Популярный человек на этом форумеlist_id Популярный человек на этом форумеlist_id Популярный человек на этом форуме
Cool

Цитата:
for %f in (*.jpg) do ren %f *.rar
Лучше так:
for %f in (*.jpg) do ren "%f" *.rar
(кавычки добавлены для того, чтобы обрабатывались файлы, имена которых содержат пробелы)
Цитата:
(если вызывать НЕ из батника, а из коммандной строки то надо писать %%f)
На Вин2000 в бат-файле эта строка выглядит так: (с одним % - не работает)
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]
list_id вне форума  
Старый 25.05.2003, 13:25     # 11
uroboros
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, 04:08     # 12
i1cho
Junior Member
 
Аватар для i1cho
 
Регистрация: 23.09.2004
Сообщения: 105

i1cho Нуль без палочки
Есть проблема, надо переехать с 98 на w2k. bat'ники на w2k не пашут
,говорят шо надо файлы cmd использовать, Подскажите де про них почитать плз.
__________________
...мысли думают нас
i1cho вне форума  
Старый 28.10.2004, 10:11     # 13
denver
::VIP::
 
Аватар для denver
 
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260

denver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуру
i1doc
батники работают под любой виндой, а cmd это тот-же bat только с другим расширением.
__________________
sapienti sat.
denver вне форума  
Старый 28.10.2004, 12:04     # 14
Gem Single
Newbie
 
Аватар для Gem Single
 
Регистрация: 22.07.2004
Адрес: Брест
Сообщения: 26

Gem Single Путь к славе только начался
Кстати, для тех, кто не знает. И в Win2k, и в WinXP есть команда "help".
А если нужен help по конкретной команде, например, "set", то нужно вызвать "help set". Ну оччень подробно все расписано. А в русской винде даже по-русски.
__________________
Spel chekers, hoo neeeds em?
Gem Single вне форума  
Старый 29.10.2004, 18:16     # 15
i1cho
Junior Member
 
Аватар для i1cho
 
Регистрация: 23.09.2004
Сообщения: 105

i1cho Нуль без палочки
А кто подскажет, какая прога выполняет файлы cmd. (если данный вопрос коректен)
__________________
...мысли думают нас
i1cho вне форума  
Старый 29.10.2004, 19:19     # 16
mosh
Mosherator
 
Аватар для mosh
 
Регистрация: 29.10.2002
Адрес: Moshcow
Сообщения: 1 201

mosh Бог с наворотамиmosh Бог с наворотами
mosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотамиmosh Бог с наворотами
i1doc Есть в windows такая: cmd.exe
__________________
Nach dem Spiel
ist vor dem Spiel.
S.Herberger
mosh вне форума  
Старый 03.12.2004, 14:54     # 17
i1cho
Junior Member
 
Аватар для i1cho
 
Регистрация: 23.09.2004
Сообщения: 105

i1cho Нуль без палочки
Question Вопрос по комманду exist

Шото не работает команда exist (проверяет наличие файлов) в w2k , шо делать не пойму ???, сам батник 100% рабочий (под 98 виндой правда)
__________________
...мысли думают нас

Последний раз редактировалось i1doc; 03.12.2004 в 15:11.
i1cho вне форума  
Старый 03.12.2004, 15:46     # 18
denver
::VIP::
 
Аватар для denver
 
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260

denver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуру
i1doc
exist это не комманда, а параметр команды if, набери if /? там все написано. Или приведи сюда то что там написано если нет exist.
__________________
sapienti sat.
denver вне форума  
Старый 03.12.2004, 15:59     # 19
i1cho
Junior Member
 
Аватар для i1cho
 
Регистрация: 23.09.2004
Сообщения: 105

i1cho Нуль без палочки
спасибо шо обяснили убогому :)

строка такая
if exist E:\путь\*.* h:\папка\програмка.exe
весь фикус в том что по барабану, есть файлы, или нет - програмка запускается
-------------------------------
В прцессе разборов выяснилось то если вместо E:\путь\*.* прописать E:\путь\*.txt- то все работает вариант E:\путь\*.??? - тож не работает, как же маску задать млин - файлы то все нужно ловить.
__________________
...мысли думают нас

Последний раз редактировалось i1doc; 03.12.2004 в 18:08.
i1cho вне форума  
Старый 03.12.2004, 22:56     # 20
denver
::VIP::
 
Аватар для denver
 
Регистрация: 02.12.2001
Адрес: Hohland
Сообщения: 2 260

denver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуруdenver Гуру
i1doc
Приведи строку точнее, что вызываешь. Только не по памяти, а именно то что не работает. Мало ли. Если это в батнике то строку из батника плиз, лучше весь.

-------------------------------------------------
Ха! Догнал. Под *.* попадают также каталоги, включая . и .. (т.е. текущий каталог и родительский). Ну вобщем if exist *.* сработает даже в пустом каталоге. Как решить ща подумаю...

-------------------------------------------------
Хм.. может и не самое лакоичное решение но работает (во всяком случае это уже во всех версиях винды должно). Пример батника:
Код:
@echo off
for %%f in (%1\*.*) do goto dosomething
exit

:dosomething
echo В каталоге "%1" содержится как минимум один файл
Запускать с именем папки (то бишь например dosomething.bat E:\Папка\).
__________________
sapienti sat.
denver вне форума  

Теги (метки)
bat, cmd, perl

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 20:07.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.