Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.snto-msu.net/showflat.php?Number=7378894&src=arc&showlite=
Дата изменения: Unknown
Дата индексирования: Wed Apr 13 14:03:09 2016
Кодировка: Windows-1251

Поисковые слова: storm
bat-ник для увеличения номера файла - Public forum of MSU united student networks
Root | Google | Yandex | Mail.ru | Kommersant | Afisha | LAN Support
  
Technical >> Development (Archive)

Страницы: 0 | 20 | показать все | след. страница
Grasshopper
member

Рег.: 26.09.2006
Сообщений: 132
Из: сектор Г
Рейтинг: 60
  bat-ник для увеличения номера файла
      02.04.2008 13:58
 

Имеется набор пронумерованных файлов: solp0.dat, solp1.dat, solp2.dat....

Нужно написать bat-файл, который бы увеличил номер каждого файла на 1.

Подскажите, как это сделать, пожалуйста

Hohao_Ho
заблудший учитель

Рег.: 05.04.2004
Сообщений: 970
Рейтинг: 390
  Re: bat-ник для увеличения номера файла [re: Grasshopper]
      02.04.2008 14:00
-2

имхо средствами батников это не делается. попробуй яваскрипт.



Я - это снова я
fedechka

Рег.: 10.09.2004
Сообщений: 58783
Из: Отрадное
Рейтинг: 10953
  Re: bat-ник для увеличения номера файла [re: Hohao_Ho]
      02.04.2008 14:01
-1

это делается средствами яваскрипта? :shocked:



без подписи
Hohao_Ho
заблудший учитель

Рег.: 05.04.2004
Сообщений: 970
Рейтинг: 390
  Re: bat-ник для увеличения номера файла [re: fedechka]
      02.04.2008 14:05
 

да, в WSH



Я - это снова я
hulio
дядя Коля

Рег.: 09.10.2004
Сообщений: 72683
Рейтинг: 16183
  Re: bat-ник для увеличения номера файла [re: fedechka]
      02.04.2008 14:05
1

Имелся ввиду Windows Script Host. Для него можно писать на VBScript и JavaScript.




помните, что Microsoft компания всегда думает о том, как вас лучше сделать.
fedechka

Рег.: 10.09.2004
Сообщений: 58783
Из: Отрадное
Рейтинг: 10953
  Re: bat-ник для увеличения номера файла [re: Hohao_Ho]
      02.04.2008 14:10
 

а... не пугай так:)



без подписи
Grasshopper
member

Рег.: 26.09.2006
Сообщений: 132
Из: сектор Г
Рейтинг: 60
  Re: bat-ник для увеличения номера файла [re: hulio]
      02.04.2008 14:11
-1

ееее, я надеялся малой кровью. Проще изменить логику программы, которая эти файлы использует(графики по ним строит)

спасибо за реплаи :)

кста, а что, ЯваСкрипт умеет работать с регулярными выражениями (без них тут, вроде, никак)?

horror
гонобобель

Рег.: 30.09.2002
Сообщений: 3784
Рейтинг: 2137
  Re: bat-ник для увеличения номера файла [re: Grasshopper]
      02.04.2008 14:13
 

посимвольной работы со стрингами здесь хватит за глаза

Zoobastik
Комок меха

Рег.: 18.10.2003
Сообщений: 7462
Из: За спиной
Рейтинг: 4345
  Re: bat-ник для увеличения номера файла [re: Hohao_Ho]
      02.04.2008 14:15
 

Имхо делается, надо тока Lynn подождать :D

__No__

Рег.: 17.01.2005
Сообщений: 21063
Из: Внутренняя Монголия
Рейтинг: 6310
  Re: bat-ник для увеличения номера файла [re: Grasshopper]
      02.04.2008 14:17
1


 
Quote:

ЯваСкрипт умеет работать с регулярными выражениями?




 Умеет



Dixi.
Rad
delinquent guy

Рег.: 06.09.2005
Сообщений: 17291
Из: here and there
Рейтинг: 2232
  Re: bat-ник для увеличения номера файла [re: Grasshopper]
      02.04.2008 14:25
2

работа единоразовая?
Номера идут по порядку? Длина номеров одинакова?

Тогда можно и батником обойтись, имхо. Но если в цифрах нет ведущих нулей, то не получится (не будет правильно работать сортировка).

Идея: получить список файлов (dir /b >>tmpfile), дописать в конец имя, которое должно быть у последнего файла (echo .... >>tmpfile), отсортировать по убыванию (sort /r).
Затем в цикле читаем этот файл (for /?), каждый раз вызываем ren, параллельно сохраняя в переменной окружения имя, т.е. (нужные параметры для for посмотри сам):
for %%I.... do call :mylabel %%I
goto :eof
:mylabel
if -%save%-==-- goto cont
if -%1-==-.- goto :eof
if -%1-==-..- goto :eof
ren %1 %save%
:cont
set save=%1
goto :eof



Storm
:)

Рег.: 09.09.2004
Сообщений: 3301
Из: hane.ru
Рейтинг: 132
  Re: bat-ник для увеличения номера файла [re: Grasshopper]
      02.04.2008 14:33
8

C:\Projects>more 1.bat
FOR /L %%i IN (10000,-1,0) DO @2.bat %%i

C:\Projects>more 2.bat
@set /A J=%1+1
move solp%1.dat solp%J%.dat

Можно сразу список файлов в FOR получать, но это надо help for покурить хорошо.




Ecchi nano wa ikenai to omoimasu!
==Media.Anime==
Yorik

Рег.: 01.09.2005
Сообщений: 2476
Из: Москва
Рейтинг: 633
  Re: bat-ник для увеличения номера файла [re: Storm]
      02.04.2008 15:07
1

я бы добавил проверку, существует ли файл

Rad
delinquent guy

Рег.: 06.09.2005
Сообщений: 17291
Из: here and there
Рейтинг: 2232
  Re: bat-ник для увеличения номера файла [re: Storm]
      02.04.2008 15:38
-1

о... все гениальное - просто.
А зачем два файла?



Transmission
Torrent client

Рег.: 01.04.2008
Сообщений: 160
Из: uname -a
Рейтинг: -57
  Re: bat-ник для увеличения номера файла [re: Rad]
      02.04.2008 15:39
2

Quote:

А зачем два файла?



welcome to *.bat world ;)

Rad
delinquent guy

Рег.: 06.09.2005
Сообщений: 17291
Из: here and there
Рейтинг: 2232
  Re: bat-ник для увеличения номера файла [re: Transmission]
      02.04.2008 15:43
-2

В ответ на:


welcome to *.bat world ;)



разве под NT между *.bat и *.cmd есть какое-то отличие?



BorisL
постоянный отец

Рег.: 23.02.2004
Сообщений: 17631
Из: torrent.msu
Рейтинг: 3560
  Re: bat-ник для увеличения номера файла [re: Rad]
      02.04.2008 16:48
2

если в реестр залезть и нашкодничать там - будут.

Rad
delinquent guy

Рег.: 06.09.2005
Сообщений: 17291
Из: here and there
Рейтинг: 2232
  Re: bat-ник для увеличения номера файла [re: BorisL]
      02.04.2008 17:19
-1

В ответ на:

если в реестр залезть и нашкодничать там - будут.


Если уж на то пошло, топикстартер не сказал, что у него за ОС, может у него *nix, а слово "батник" он по привычке использует



CROTishka
Shai-Hulud

Рег.: 09.06.2004
Сообщений: 31438
Из: - под земли
Рейтинг: 3654
  Re: bat-ник для увеличения номера файла [re: Storm]
      02.04.2008 17:47
 

Круто. =)
Мне понравилось



Grasshopper
member

Рег.: 26.09.2006
Сообщений: 132
Из: сектор Г
Рейтинг: 60
  Re: bat-ник для увеличения номера файла [re: Rad]
      02.04.2008 21:18
1

Работа единоразовая. Номера обычно от 1 до 9, но могут и двузначные появиться, отсутствие ведущих нулей - да, это проблема. Номера по порядку. Система Windows, так что батник не "по привычке".

Спасибо за посты, у меня тут у самого кое-какие идеи зашевелились, по моему даже проще можно, учитывая структуру имен (solpN.dat).

Только как сделать строчку 'solpN.dat', N - число, хранящееся в переменной I - вот так:
$filename$ = solp%%I.dat
??
 


Страницы: 0 | 20 | показать все | след. страница

Technical >> Development (Archive)

Дополнительная информация
1 зарегистрированных и 0 анонимных пользователей просматривают этот форум.

Модераторы:  DarkGray 

Печать темы
>>
Права
      Вы можете создавать новые темы
      Вы можете отвечать на сообщения
      HTML отключен
      UBBCode включен

Рейтинг:
Просмотров темы:

Переход в