<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD/BAT: Поэтапное переименование файлов]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=6731&amp;type=atom" />
	<updated>2012-01-27T11:44:24Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=6731</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поэтапное переименование файлов]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=56034#p56034" />
			<content type="html"><![CDATA[<p>Очень мощное решение! <br />Но я побоялся использовать конструкции типа %~dp0, начитавшись страшилок с ошибками в адресации папок. Просто из-за отсутствия опыта использования. Поэтому взял такое же решение с другого форума, более понятное для меня:</p><div class="codebox"><pre><code>@Echo Off
:: Скрипт подготовки файлов для импорта. 
:: Файлы поступают в папку по электронной почте.
:: Рабочая программа настроена на загрузку данных с файла Current.dat, с последующем его удалением.
:: Обязательно использовать маску, отличную от файла подготовленного к загрузке. Иначе файл будет переименовываться циклично.
Set Where=C:\Exchange\in
Set NewName=Current.dat
Set Maska=d*.dat
:: Ждем появления нового файла данных и удаления подготовленного файла
:Test
IF exist &quot;%Where%\%Maska%&quot; IF not exist &quot;%Where%\%NewName%&quot; GOTO :Beg
GOTO :Test
:: Переименовываем самый старый файл
:Beg
FOR /F &quot;usebackq delims=&quot; %%f IN (`Dir &quot;%Where%\%Maska%&quot; /B /A:-D /O:D`) DO Ren &quot;%Where%\%%f&quot; &quot;%NewName%&quot; &amp; GOTO :Continue
:Continue
sleep 10
GOTO :Test</code></pre></div><p>В связи с чем, появился вопрос. В добавленной мною проверке <strong>IF not exist Current.dat</strong> в строке:<br /></p><div class="codebox"><pre><code>IF exist &quot;%Where%\%Maska%&quot; IF not exist &quot;%Where%\%NewName%&quot; GOTO :Beg</code></pre></div><p>накладываются какие либо ограничения на файл <strong>Current.dat</strong> в момент проверки?</p>]]></content>
			<author>
				<name><![CDATA[user37]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27532</uri>
			</author>
			<updated>2012-01-27T11:44:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=56034#p56034</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поэтапное переименование файлов]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=56016#p56016" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>echo off
set __path=%~dp0
for /f &quot;delims=&quot; %%i in (&#039;dir /a:-d /t:c /o:d /b &quot;%__path%&quot;&#039;) do (ren &quot;%%~dpnxi&quot; &quot;Current%%~xi&quot; &amp; goto :eof)</code></pre></div>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-01-26T12:27:53Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=56016#p56016</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[CMD/BAT: Поэтапное переименование файлов]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=56014#p56014" />
			<content type="html"><![CDATA[<p>Помогите, плиз!<br />Есть папка, в которой появляются файлы вида File_XXX.DAT, где XXX - случайное, заранее не известное число.<br />Нужно переименовать самый старый файл File_XXX.DAT в Current.DAT<br />После удаления Current.DAT из папки другой программой, переименовать следующий самый старый файл и т.д.<br />Заранее благодарен!</p>]]></content>
			<author>
				<name><![CDATA[user37]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27532</uri>
			</author>
			<updated>2012-01-26T11:58:38Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=56014#p56014</id>
		</entry>
</feed>
