<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11504&amp;type=atom" />
	<updated>2020-05-21T09:32:09Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=11504</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139645#p139645" />
			<content type="html"><![CDATA[<p>Переделал вот в такой вариант:</p><div class="quotebox"><blockquote><p>@echo off</p><p>setlocal</p><p>set &quot;FILE=123.txt&quot;</p><p>set &quot;SRCROOT=%CD%&quot;</p><p>set &quot;DSTROOT=%CD%&quot;</p><p>:: delims is TAB (ASCII 9)<br /> for /f &quot;usebackq tokens=1,2 delims=	&quot; %%a in (&quot;%FILE%&quot;) do (<br /> 	mkdir &quot;%DSTROOT%\%%~b&quot;<br /> 	move &quot;%SRCROOT%\%%~a&quot; &quot;%DSTROOT%\%%~b\%%~a&quot;<br />)</p></blockquote></div><br /><p>Были какие-то проблемы с копированием (не находил путей/файлов и пр.). <br />Доволен как слон, еще раз спасибо <strong>Rumata</strong></p>]]></content>
			<author>
				<name><![CDATA[Ойган]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40818</uri>
			</author>
			<updated>2020-05-21T09:32:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139645#p139645</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139643#p139643" />
			<content type="html"><![CDATA[<p><strong>Rumata</strong></p><p>Благодарю покорно <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> на выходных поэкспериментирую дома еще <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[Ойган]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40818</uri>
			</author>
			<updated>2020-05-21T07:48:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139643#p139643</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139630#p139630" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Ойган пишет:</cite><blockquote><p>в переменную b не считывается ничего, а в переменную a - вся текущая строка</p></blockquote></div><p>потому что<br /></p><div class="codebox"><pre><code>
:: delims is TAB (ASCII 9)
for /f &quot;usebackq tokens=1,2 delims=	&quot; %%a in ( &quot;%FILE%&quot; ) do (
</code></pre></div><p>здесь сказано, что разделитель символ табуляции. В строке <strong>delims=	&quot;</strong> между символами &quot;равно&quot; и &quot;кавычка&quot; должен быть символ табуляции. </p><p>Возможно это и не очевидно, но расширение <strong>.tsv</strong> поразумевает формат <strong>TAB separated values</strong>, то есть каждый столбец отделен от соседних символом табуляции.</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2020-05-20T14:10:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139630#p139630</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139629#p139629" />
			<content type="html"><![CDATA[<p><strong>alexii</strong></p><p>Пути папки назначения и папки источника - текущая папка с расположением батника.<br />Пример выше от пользователя <strong>Rumata </strong>не заработал. По cmd отследил, что в цикле в результате опроса файла (хоть в формате txt, хоть в формате csv) в переменную <strong>b</strong> не считывается ничего, а в переменную <strong>a</strong> - вся текущая строка из FILE (название папки которую копировать и через пробел куда копировать). <br />Может я экспортирую как-то не так? Пробовал и простым копированием и сохранить как ТХТ с разделителем и какой-то внешний (интернет) конвертор в csv...</p>]]></content>
			<author>
				<name><![CDATA[Ойган]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40818</uri>
			</author>
			<updated>2020-05-20T12:26:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139629#p139629</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139516#p139516" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>
@echo off

setlocal

set &quot;FILE=z.tsv&quot;

set &quot;SRCROOT=%CD%&quot;

set &quot;DSTROOT=%CD%&quot;

:: delims is TAB (ASCII 9)
for /f &quot;usebackq tokens=1,2 delims=	&quot; %%a in ( &quot;%FILE%&quot; ) do (
	mkdir &quot;%DSTROOT%\%%~b&quot;
	copy /b &quot;%SRCROOT%\%%~a\*&quot; &quot;%DSTROOT%\%%~b&quot;
)
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2020-05-14T13:59:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139516#p139516</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139512#p139512" />
			<content type="html"><![CDATA[<p><strong>Ойган</strong>, там только имена без путей.</p><p>Где брать имя исходного каталога, где будут расположены каталоги из столбца «A»? Где брать имя целевого каталога, где могут находиться каталоги из столбца «B»?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2020-05-14T12:04:12Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139512#p139512</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139511#p139511" />
			<content type="html"><![CDATA[<p><strong>alexii</strong></p><p>Добрый день!<br />Прикладываю подопытного</p>]]></content>
			<author>
				<name><![CDATA[Ойган]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40818</uri>
			</author>
			<updated>2020-05-14T09:04:03Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139511#p139511</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139500#p139500" />
			<content type="html"><![CDATA[<p><strong>Ойган</strong>, упакуйте образец:<br /></p><div class="quotebox"><cite>Ойган пишет:</cite><blockquote><p>Есть эксель файл</p></blockquote></div><p>в архив и выложите на вменяемый обменник или облако.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2020-05-13T13:50:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139500#p139500</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=139496#p139496" />
			<content type="html"><![CDATA[<p>Добрый день!<br />Столкнулся с аналогичной проблемой, но несколько с измененными исходными данными:<br />Есть эксель файл реестра в котором в двух ячейках прописаны <br />1) названия папок которые нужно перенести<br />2) в какую папку перенести.<br />При копировании в txt файл получается примерно следующее:</p><p>ED.D.P001.0.0UXB&amp;&amp;&amp;&amp;&amp;&amp;&amp;&amp;.068.SD.0005.E	Pioneer base. Construction laboratory.<br />ED.D.P001.0.0UXS&amp;&amp;&amp;&amp;&amp;&amp;&amp;&amp;.010.DC.0002.E	Drilling and blasting works area. Parking area for commercial vehicles and special machinery.</p><p>Если бы названий папок куда копировать было не очень много, можно было бы и в ручную это сделать, но их слишком много (более 400).<br />Подскажите как модифицировать полученный код выше, чтоб было перемещение папок было с созданием директории назначения при необходимости?</p>]]></content>
			<author>
				<name><![CDATA[Ойган]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40818</uri>
			</author>
			<updated>2020-05-13T09:35:14Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=139496#p139496</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=102724#p102724" />
			<content type="html"><![CDATA[<p>Всё дело в строчке<br /></p><div class="quotebox"><cite>int-el пишет:</cite><blockquote><p>dir /a-d/b/s &quot;%%i&quot;&quot;</p></blockquote></div><p>У команды <strong>dir</strong> ключ <strong>/a-d</strong> означает &quot;всё, кроме директорий&quot;. Если в файле-списке только директории, следует заменить его на <strong>/AD</strong>. А лучше убрать бы всю эту строчку, поскольку команда move, применённая к директории переносит всю директорию с поддиректориями и вложенными файлами. Оставить<br /></p><div class="codebox"><pre><code>for /f &quot;usebackq delims=&quot; %%i in (&quot;%list%&quot;) do (
 if not exist %%i (
   @echo %%i &gt;&gt;%not_found%
 ) else (
  move &quot;%%i&quot; &quot;%folder%&quot;
 )
)
</code></pre></div><p>А на будущее рекомендовал бы посмотреть для бОльшей автоматизации процесса в сторону команды <strong>robocopy /?</strong>. В неё уже заложена возможность запуска копирования в определённое время, повторных попыток копирования через определённый таймаут в случае неудач, и ведение лога.</p>]]></content>
			<author>
				<name><![CDATA[Ded.Shkarpet]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33839</uri>
			</author>
			<updated>2016-04-19T07:54:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=102724#p102724</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[CMD/BAT: Поиск и копирование папок по списку из txt файла]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=102650#p102650" />
			<content type="html"><![CDATA[<p>На жестком хранятся порядка 10000 папок из которых по списку (txt файл ) нужно найти и скопировать в другу папку, около 200 папок. В инете нашёл скрипт, но он ищет файлы а не папки... </p><div class="codebox"><pre><code>@echo off
chcp 1251&gt;nul

set &quot;list=life.txt&quot;   - файл в котором перечень папок
set &quot;folder=C:\Users\Books\Desktop\OZHILI&quot;  - папка в которую их нужно скопировать
set &quot;not_found=not_found.txt&quot; - файл  с ненайденными папками

2&gt;nul md &quot;%folder%&quot;
&gt;&quot;%not_found%&quot; (
for /f &quot;usebackq delims=&quot; %%i in (&quot;%list%&quot;) do (
 for /f &quot;delims=&quot; %%j in (&#039;
 &quot;2&gt;nul dir /a-d/b/s &quot;%%i&quot;&quot;
 &#039;) do (
  &gt;nul move &quot;%%j&quot; &quot;%folder%&quot;
  )
 )|| (
 echo %%i
 )
)

exit /b</code></pre></div><p>Помогите пожалуйста решить задачу, а то мне каждый день приходится вручную всё это копировать.</p>]]></content>
			<author>
				<name><![CDATA[int-el]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33833</uri>
			</author>
			<updated>2016-04-17T01:45:07Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=102650#p102650</id>
		</entry>
</feed>
