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

Мне нужно сделать script, который может написать одну строку текста в текстовый файл в том же каталоге, что и командный файл.

Ответ 1

Вы можете использовать echo и перенаправить вывод в текстовый файл (см. примечания ниже):

rem Saved in D:\Temp\WriteText.bat
@echo off
@echo This is a test> test.txt
@echo 123>> test.txt
@echo 245.67>> test.txt

Вывод:

D:\Temp>WriteText

D:\Temp>type test.txt
This is a test
123
245.67

D:\Temp>

Примечания:

  • @echo off отключает печать каждой команды на консоли
  • @ в начале оставшихся строк прекращает печать самой команды echo, но не подавляет вывод echo. (Позволяет отображать остальную часть строки после @echo.
  • Если вы не укажете ему конкретное имя пути, перенаправление с помощью > или >> будет записываться в текущий каталог (каталог, в котором выполняется код).
  • @echo This is a test > test.txt использует один > для перезаписывания любого файла, который уже существует с новым контентом.
  • Остальные операторы @echo используют два символа >> для добавления в текстовый файл (добавить) вместо его записи.
  • type test.txt просто выводит вывод файла в окно команд.

Ответ 2

Легче использовать только один блок кода, тогда вам нужно только одно перенаправление.

(
  echo Line1
  echo Line2
  ...
  echo Last Line
) > filename.txt

Ответ 3

    @echo off

    (echo this is in the first line) > xy.txt
    (echo this is in the second line) >> xy.txt

    exit

Два >> означают, что вторая строка будет добавлена ​​к файлу (т.е. вторая строка начнется после последней строки xy.txt).

так выглядит xy.txt:

this is in the first line
this is in the second line

Ответ 4

echo "blahblah"> txt.txt стирает txt и помещает blahblah в это место

echo "blahblah">> txt.txt будет писать blahblah на новой строке в txt

Я думаю, что оба создадут новый txt, если он не существует (я знаю, что первый делает)

Здесь, где "txt.txt" написано выше, путь к файлу может быть вставлен, если требуется. например C:\Users\<username>\desktop, который поместит его на рабочий стол.

Ответ 5

@echo off Запись заголовков с использованием пакетных файлов цвет 0a

echo Пример текстa > Filename.txt echo Дополнительный текст → Filename.txt

@ECHO OFF
Title Writing Using Batch Files
color 0a

echo Example Text > Filename.txt
echo Additional Text >> Filename.txt

Ответ 6

@echo off

echo Type your text here.

:top

set /p boompanes=

pause

echo %boompanes%> practice.txt

надеюсь, что это поможет. вы должны изменить имена строк (IDK, что называется) и имя файла

Ответ 7

  • Вы можете использовать copy con для записи длинного текста
  • Пример:

    C:\COPY CON [диск:] [путь] [Имя файла]

    .... Содержание

    F6

    Скопирован 1 файл (ы)