@Djasar

Нужно найти маленького размера файлы в разных каталогах, как?

Не сильно силен в cmd, но набросал небольшой код. Хотелось его чуть упростить.
1. Необходим поиск на сетевом диске
2. Поиск делать в разных папках: по размеру
3. Вывод результата поиска в текстовый файл с полными путями к файлу.

net use x: \\10.10.10.10\h$\katolog
ferfiles /P X:\papka1 M/ *.* /S /C "cmd /c if @fsize LSS 20 echo @path size @fsize date @fdate time @ftime" >C:\temp\1\text.txt "
ferfiles /P X:\papka2 M/ *.* /S /C "cmd /c if @fsize LSS 20 echo @path size @fsize date @fdate time @ftime" >C:\temp\1\text2.txt "
ferfiles /P X:\papka3 M/ *.* /S /C "cmd /c if @fsize LSS 20 echo @path size @fsize date @fdate time @ftime" >C:\temp\1\text3.txt "
net use x: /d


4. Указывать весь katolog нельзя, т.к. есть папки которые не нужно сканировать
5. И сохранять весь результат по папкам нужно в один файл, а не в несколько как у меня.
  • Вопрос задан
  • 70 просмотров
Решения вопроса 1
@pumpkinm
del /q out.txt
for /R "\\SERVER1\Share1\Folder1" %%A in (*.*) do if %%~zA LSS 20 echo %%A [size %%~zA] >> out.txt
for /R "\\SERVER2\Share2\Folder2" %%A in (*.*) do if %%~zA LSS 20 echo %%A [size %%~zA] >> out.txt
for /R "\\SERVER3\Share3\Folder3" %%A in (*.*) do if %%~zA LSS 20 echo %%A [size %%~zA] >> out.txt
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
wisgest
@wisgest
Не ИТ-специалист
forfiles — внешняя утилита, которая не везде установлена, и, честно говоря, не знаю зачем нужна, так как, по крайней мере в большинстве случаев, всё что можно сделать ей, можно сделать внутренней командой for, — советую изучить справку:
for /?

И сохранять весь результат по папкам нужно в один файл, а не в несколько как у меня.

Либо группировать команды: вместо
comand1>file.txt
comand2>file.txt

писать
(
	comand1
	comand2
)>file.txt

либо использовать >> вместо > для дозаписи в файл без его очистки:
comand1>file.txt
comand2>>file.txt
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы