<?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=8744&amp;type=atom" />
	<updated>2013-10-12T07:34:13Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=8744</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75973#p75973" />
			<content type="html"><![CDATA[<p>wisgest, спасибо огромное!!! Это вообще то что нужно!!! Супер!!!!!!!!!!!!!!!!</p>]]></content>
			<author>
				<name><![CDATA[xsanekk]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27386</uri>
			</author>
			<updated>2013-10-12T07:34:13Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75973#p75973</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75971#p75971" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>@echo off
call :proc&gt;F:\AVT\TXT\ITOG.txt
exit /b

:proc
set total=0
echo =======================
for /d /r &quot;F:\AVT\PRJ\&quot; %%s in (*) do (
  pushd &quot;%%~s&quot;
  for /f %%x in (&#039;type *.prj 2^&gt;nul ^| find /c &quot;(702)&quot;&#039;) do (
    echo %%s: %%x
    set /a total+=%%x
  )
  popd
)
echo =======================
echo Общее количество слов: %total%
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2013-10-12T01:49:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75971#p75971</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75944#p75944" />
			<content type="html"><![CDATA[<p>Поясните пожалуйста что значит &quot;:&quot; в строке find /c &quot;Required&quot; *.txt |find &quot;:&quot; </p><p>У меня получилось считать вот так файлы:<br /></p><div class="codebox"><pre><code>
cd F:\AVT\PRJ\
for /d /r %%s in (&quot;*&quot;) do (
pushd %CD%
cd %%s
for %%a in (*.prj) do (
find /c &quot;(702)&quot; *.prj |find &quot;:&quot;
)
popd
)
</code></pre></div><p>Теперь задача как перенаправить все данные в файл, затем их про суммировать по папкам, а потом вывести в красивый файл который я описал выше...</p>]]></content>
			<author>
				<name><![CDATA[xsanekk]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27386</uri>
			</author>
			<updated>2013-10-11T06:52:17Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75944#p75944</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75892#p75892" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>yuriy2000 пишет:</cite><blockquote><p>2. для поиска кол-ва строк содержащих слова используйте <strong>find /c &quot;Required&quot; *.txt |find &quot;:&quot; </strong><br />получим что-то типа:<br /></p><div class="codebox"><pre><code>
---------- 2.TXT: 8
---------- 1.TXT: 0
---------- 12.TXT: 8
</code></pre></div><p>3. полученные файл для каждого подкаталога&nbsp; обрабатываем через <strong>FOR /F</strong></p></blockquote></div><p>Можно и покороче:<br /></p><div class="codebox"><pre><code>type *.txt 2&gt;nul | find /c &quot;Required&quot;</code></pre></div><p>сразу выведет число. Чтобы поместить его в счётчик:<br /></p><div class="codebox"><pre><code>for /f %%i in (&#039;type *.txt 2^&gt;nul ^| find /c &quot;Required&quot;&#039;) do set /a сount+=%%i</code></pre></div>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2013-10-09T15:33:41Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75892#p75892</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75866#p75866" />
			<content type="html"><![CDATA[<p>Тогда я переношу это в раздел форума VBS?</p>]]></content>
			<author>
				<name><![CDATA[xsanekk]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27386</uri>
			</author>
			<updated>2013-10-09T06:03:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75866#p75866</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75863#p75863" />
			<content type="html"><![CDATA[<p>Если вы хотите получить чтобы в строке &quot;мама мама мама&quot; слово встречается 3 раза, то как уже написал выше&nbsp; <strong>alexii </strong>&nbsp; это сделать на CMD маловероятно. Если это условие для вас некритично, то можно сделать так:</p><div class="quotebox"><blockquote><p>Есть папка, в ней находятся подкаталоги,</p></blockquote></div><p>1. используйте конструкцию FOR /D для каждого подкаталога</p><div class="quotebox"><blockquote><p>Найти какое количество раз повторяется заданное слово во всех файлах данного подкаталога</p></blockquote></div><p>2. для поиска кол-ва строк содержащих слова используйте <strong>find /c &quot;Required&quot; *.txt |find &quot;:&quot; </strong><br />получим что-то типа:<br /></p><div class="codebox"><pre><code>
---------- 2.TXT: 8
---------- 1.TXT: 0
---------- 12.TXT: 8
</code></pre></div><p>3. полученные файл для каждого подкаталога&nbsp; обрабатываем через <strong>FOR /F</strong><br />----------<br />PS: проще конечно написать скрипт на VBS/JScript/Perl&nbsp; &nbsp;и т.д.</p>]]></content>
			<author>
				<name><![CDATA[yuriy2000]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25753</uri>
			</author>
			<updated>2013-10-09T02:17:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75863#p75863</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75860#p75860" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Необходимо найти какое количество раз повторяется заданное слово во всех файлах данного подкаталога,</p></blockquote></div><p>Я не очень представляю себе, насколько сие возможно в рамках заданной категории, поскольку не вижу способа сосчитать количество вхождений «слова» в файл. «findstr.exe» ищет <em>строки</em>, содержащие слово, но не количество слов:<br /></p><div class="codebox"><pre><code>мама мама мама</code></pre></div>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2013-10-09T00:52:59Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75860#p75860</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[CMD/BAT: Поиск строки в подкаталогах.]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=75856#p75856" />
			<content type="html"><![CDATA[<p>Граждане форумчане, помогайте пожалуйста, конкретная задача стала передо мной, решить что то не могу, выручайте... </p><p>Есть папка, в ней находятся подкаталоги, в подкаталогах находятся файлы одинакового расширения, но разные имена. Необходимо найти какое количество раз повторяется заданное слово во всех файлах данного подкаталога, затем считать имя этого подкаталога и записать в текстовый файл, потом аналогично сделать в следующем каталоге и дописать в файл... Файл получится вида:<br />=======================<br />ИмяКаталога1; КоличествоСлов<br />ИмяКаталога2; КоличествоСлов<br />ИмяКаталогаN; КоличествоСлов<br />=======================<br /> Общее количество слов: NNNN</p><p>У меня получилось считать только общее количество слов во всех подкаталогах файлах...<br /></p><div class="codebox"><pre><code>
findstr /S /M &quot;ИскомоеСлово&quot; F:\AVT\PRJ\*.* &gt;&gt;f:\AVT\TMP\1.txt
find /v /n /c &quot;&quot; F:\AVT\TMP\1.txt &gt;F:\AVT\TXT\ITOG.txt
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[xsanekk]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27386</uri>
			</author>
			<updated>2013-10-08T20:37:05Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=75856#p75856</id>
		</entry>
</feed>
