Как сохранить результат выражения команды в переменной с помощью битовых скриптов?

У меня есть команда ниже, чтобы подсчитать все каталоги, которые следуют шаблону 20?????? :

 'dir /b "20??????" | find /c "2"' 

Например, если у меня есть следующие каталоги, команда вернет 6:

 20090901 20090902 20090903 20090904 20090905 20090906 

Как сохранить результат этой команды (6 в предыдущем примере) в переменной?

 set cmd="dir /b "20??????" | find /c "2" " FOR /F "tokens=*" %%i IN (' %cmd% ') DO SET X=%%i 
 (dir /b "20??????" | find /c "2")>>x.txt set /p variable= 

Это все.

Конечно, если вы не хотите файл, просто сделайте это потом:

 del x.txt 

EDIT - как сделать имя файла уникальным:

@Mai: используйте это для создания имени файла uniqe:

 set timestamp=%date:.=%%time::=% set timestamp=%timestamp:,=% set timestamp=%timestamp:/=% set timestamp=%timestamp:-=% set filename=file%timestamp%.tmp 

Добавьте новые замены, если формат даты вашей системы культуры содержит другие символы внутри

Вот пример:

 @echo off set wildcard=C:\*.* set count=0 FOR /F %%a in ('DIR /B %wildcard%') do set /A count=count+1 echo %count% files matching %wildcard% set choice= set /p choice=Press enter to continue ... 

Это мой код:

 @echo off set com=echo HI ::Start Of Code You Need echo|%com%>>"%temp%\tmp.txt" for /f "tokens=* delims=" %%x in (%temp%\tmp.txt) do ( set output=%%x ) del /q %temp%\tmp.txt ::End Of Code You Need echo This Is The Output: echo %output% pause>NUL 

Он принимает входные данные от com и выходов с output

 @echo off REM The command fltmc volumes provides some information about drives REM I need to extract the drive letter associated to a particular volume name. REM Here's how: fltmc volumes | find /i "\Device\HarddiskVolume3" > delme.txt for /f "tokens=1 delims= " %%i in (delme.txt) DO echo %%i Del /f delme.txt 
  • Ошибка пакетного файла Windows. Как может 30000000000000 равняться 40000000000?
  • Пакетные файлы окон: настройка переменной для цикла
  • Пакетный файл для удаления файлов старше N часов или минут
  • Файл старше 4 минут в пакетном файле
  • Отладка нерабочего командного файла или команды, выполняемой установщиком Inno Setup
  • Как запустить пакетный скрипт (.bat-файл) из eclipse
  • Удалить определенные строки в txt-файле через пакетный файл
  • (Пакет Windows) Goto внутри, если блок ведет себя очень странно
  • команды набора не работают в моем командном файле
  • Как написать полный путь в пакетном файле, имеющем имя папки с пробелом?
  • Отображение вывода командной строки Windows и redirect ее в файл
  • Interesting Posts

    Dell Inspiron 15R дает электрический шок

    FileZilla: Как скопировать файлы из одного каталога в другой на одном сервере?

    Разница между Destroy и Delete

    Могу ли я отключить печатные листы небольших целых чисел в виде строк в оболочке Erlang?

    Как остановить автоматическое изменение заголовков вкладки iterm?

    Как добавить динамический переключатель в соответствии с заданным количеством отсчетов?

    Анатомия «утечки памяти»

    Rscript не загружает пакет методов, R делает – почему и каковы последствия?

    По умолчанию Windows 7 Install: что изменить, чтобы сделать его быстрее?

    Использовать локальные изображения в элементе управления Webbrowser

    addID в jQuery?

    Как разблокировать Windows-спящий диск?

    Обнаруживать, когда видео HTML5 заканчивается

    Express.js Ошибка маршрутизации: не удается установить заголовки после их отправки

    Добавление нового столбца к каждому элементу в списке таблиц или фреймов данных

    Давайте будем гением компьютера.