<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; CMD/BAT: Cкрипт для сортировки файлов]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=7753</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7753&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «CMD/BAT: Cкрипт для сортировки файлов».]]></description>
		<lastBuildDate>Tue, 06 Nov 2012 11:40:13 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: CMD/BAT: Cкрипт для сортировки файлов]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=65436#p65436</link>
			<description><![CDATA[<div class="codebox"><pre><code>@echo off
for %%S in (in\*.*) do (
FOR /F &quot;skip=5 tokens=5&quot; %%i IN (&#039;sign.exe /s &quot;%%S&quot;&#039;) DO (
rem @echo &quot;%%S&quot; &quot;COP=%%i&quot;
if %%i GEQ 2 (
    copy &quot;In\%%~nxS&quot; &quot;OUT\%%~nxS&quot;
         @echo %time:~0,8% %date:~3,10% -- %%~nxS --- ЭП %%i OUT &gt;&gt;log.log
        )
    copy &quot;In\%%~nxS&quot; &quot;ARC\%%~nxS&quot;
    if exist &quot;ARC\%%~nxS&quot; (
         @echo %time:~0,8% %date:~3,10% -- %%~nxS --- ЭП %%i ARC &gt;&gt;log.log
         del /Q &quot;In\%%~nxS&quot;
    )
)
)
pause</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Bumble_Bee)]]></author>
			<pubDate>Tue, 06 Nov 2012 11:40:13 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=65436#p65436</guid>
		</item>
		<item>
			<title><![CDATA[Re: CMD/BAT: Cкрипт для сортировки файлов]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=65376#p65376</link>
			<description><![CDATA[<p>А попробуйте не создавать временный файл, а сразу разбирать вторым FOR-ом вывод программы sign.exe. (кстати, второй цикл ведь разбирает не только 6-тую строку, но и все последующие...)<br /></p><div class="codebox"><pre><code>
for %%I in (in\*.*) do (
rem sign.exe /s %%I &gt;test.txt 
rem for /f  &quot;skip=5 tokens=5&quot; %%k in (test.txt) do (set colep=%%k)
for /f &quot;skip=5 tokens=5&quot; %%k in (&#039;sign.exe /s %%I&#039;) do (set colep=%%k)
... )</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Rom5)]]></author>
			<pubDate>Sat, 03 Nov 2012 11:38:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=65376#p65376</guid>
		</item>
		<item>
			<title><![CDATA[CMD/BAT: Cкрипт для сортировки файлов]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=65374#p65374</link>
			<description><![CDATA[<p>Всем привет!</p><p>ОЧ. нужна Ваша помощь! ... в написании (исправлении) скрипта!</p><p>Суть - скрипт должен копировать файлы из папки IN (которые&nbsp; там постоянно появляются) в папки OUT и ARC таким образом: </p><p>- если файл в папке IN подписан двумя и более электронными подписями (ЭП) - то он копируется в папку OUT и в ARC, если количество ЭП меньше 2-х то файл копируется только в ARC. После успешного копирования файл из папки IN – удаляется. Количество подписей под файлом можно определить по результату работы программы - (sign.exe /s «путь\имя файла» &gt;test.txt). В созданном текстовом файле (test.txt) число ЭП будет в шестой строчке пятым словом - проверял.. - для одного файла (не в цикле)- все работает. </p><p>Написал скрипт для обработки любых файлов из каталога (In), но в цикле (for do) он перестал работать - НЕ ПРОИСХОДИТ ПОДСТАНОВКА НОВЫХ ЗНАЧЕНИЙ ДЛЯ ПЕРЕМЕННОЙ &quot;colep&quot; из файла &quot;test.txt&quot;. </p><p>Интуитивно, догадываюсь что решение в использовании - &quot;setlocal enabledelayedexpansion&quot; - отложенного раскрытия переменной !colep! , но не знаю как это добавить в скрипт.&nbsp; Помогите! ... или подскажите альтернативный вариант решения этой задачи. <br />Буду благодарен, Всем кто откликнется!</p><div class="codebox"><pre><code>@echo off
for %%I in (in\*.*) do (sign.exe /s %%I &gt;test.txt 
for /f  &quot;skip=5 tokens=5&quot; %%k in (test.txt) do (set colep=%%k)
if  %colep% GEQ 2 (
    copy &quot;In\%%~nxI&quot; &quot;OUT\%%~nxI&quot;
         @echo %time:~0,8% %date:~3,10% -- %%~nxI --- ЭП %colep% OUT &gt;&gt;log.log
        )
    copy &quot;In\%%~nxI&quot; &quot;ARC\%%~nxI&quot;
    if exist &quot;ARC\%%~nxI&quot; (
         @echo %time:~0,8% %date:~3,10% -- %%~nxI --- ЭП %colep% ARC &gt;&gt;log.log
         del /Q &quot;In\%%~nxI&quot;
    )
)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Drake69)]]></author>
			<pubDate>Sat, 03 Nov 2012 11:03:46 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=65374#p65374</guid>
		</item>
	</channel>
</rss>
