2014-11-22 4 views
0

Предположим, у меня есть папка с кучей файлов с расширением .dat. Я хотел бы написать пакет, который для каждого .dat-файла в папке создаст соответствующий .txt-файл. Каждый .txt должен содержать имя файла его .dat-копии внутри него, а также его собственное имя файла. Так что, если у меня есть:Пакет для создания файла txt с именем файла для каждого файла

123.dat ABC.dat zyx.dat

Пакетный файл должен создать fillowing файлы: 123.txt, содержащий текст "123.dat" abc.txt , содержащий текст «ABC.dat» zyx.txt, содержащий текст «zyx.dat»

Как это сделать? Я попытался с помощью следующей строки:

для %% х в (* .dat) у типа %% х> %% ~ nx.txt

Так же как это одно:

для %% е в (* .dat) у типа %% е> %% f.txt

Оба генерировать .txt файл для каждого файла .dat, но они копируют содержимое соответствующий .dat-файл в .txt, а не писать его имя в нем.

ответ

0

Я не тестировал его, но это должно сработать.

setlocal EnableDelayedExpansion 
for /f %%a in ('dir /b /a-d *.dat') do (
    echo %%~nxa>%%~na.txt 
) 
pause 
+0

Работает отлично. Спасибо! – Redz

0

в poweshell:

dir *.dat | %{set-content -value $_.name -path ($_.basename + ".txt")} 
0

Это мое кодирование для моего проекта, он должен работать на вашем компьютере, создавать вещи, которые вы хотите сказать, от партии к Txt

@ECHO от цвета 0a : pro4 ЦБС эхо, пожалуйста, введите ваше слово набор/р word1 = Гото экономии

: экономия echo% word1%> project.txt

+1

Пожалуйста, подумайте об использовании _ ** Stackoverflow Formatting Markups ** _. –

Смежные вопросы