Пакетная команда для создания пустых текстовых файлов с именами файлов в папке - PullRequest
0 голосов
/ 04 августа 2010

У меня есть папка с файлами, например: 001zzzqqq. * 002bbbccc. * 003nnnfff. * ...

И я хочу создать пустой текстовый файл с именем в честь каждого из этих файлов, например: 001zzzqqq.txt002bbbccc.txt 003nnnfff.txt ...

Какой-нибудь быстрый способ разобраться с этим в командном файле?Кажется, мой разум об этом забыл.

Спасибо

Ответы [ 2 ]

7 голосов
/ 05 августа 2010

Перебирать файлы в папке:

for %x in (*) do ...

Создание пустых файлов:

type NUL > %~nx.txt

%~nx соответствует имени файла без расширения переменной цикла %x. Итак, в совокупности:

for %x in (*) do type NUL > %~nx.txt

Вы также можете использовать copy NUL %~nx.txt, но это выведет 1 file(s) copied и выдаст ошибки, если текстовый файл уже существует; это более тихий вариант (или используйте copy /Y NUL %~nx.txt >NUL 2>&1).

В пакетном файле вам нужно удвоить %, но вам не понадобится пакетный файл только для этой однострочной (кроме части более крупной программы):

for %%x in (*) do type NUL > %%~nx.txt
0 голосов
/ 04 августа 2010
@echo off
for /f %%a in ('dir /B') do (
  wuauclt > %%~na.txt
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...