Пакет Windows - найти и редактировать строки в текстовом файле - PullRequest
0 голосов
/ 15 февраля 2019

Я ищу простой скрипт, который будет искать текстовый файл (input.txt) с номерами, перечисленными в следующем формате:

У меня практически нет опыта с пакетным кодированием (или любым другим кодом)и я надеюсь, что кто-то здесь может помочь мне.

0001
0002
0003
etc

Мне нужно, чтобы вывод (output.txt) был:

[test]0001[/test]
[test]0002[/test] 
[test]0003[/test] 
etc 

Любая помощь приветствуется!

Редактировать: Кто-то опубликовал скрипт на Python изатем удалил его, прежде чем я смог проверить и ответить.Я знаю, что это не то, что я изначально просил, но это прекрасно работает!Спасибо!

Вот если кто-то найдет эту ветку и сможет ее использовать:

    rf = open("input.txt", 'r')
lines = rf.read().splitlines()
formatted_lines = ['[test]{}[/test]'.format(i) for i in lines]

with open('output.txt', 'w') as wf:
    for l in formatted_lines:
        wf.write("{}\n".format(l))

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Это просто и может быть легко сделано с помощью:

@echo off

for /F "delims=" %%A IN (input.txt) do echo [test]%%A[/test]
pause>nul & exit /b 0

Это всего лишь echo результат в консоли.Чтобы сохранить его в файл, используйте:

@echo off

for /F "delims=" %%A IN (input.txt) do (echo [test]%%A[/test])>>output.txt
pause>nul & exit /b 0

Для echo его сохранения и сохранения в файле используйте:

@echo off

for /F "delims=" %%A IN (input.txt) do (
    echo [test]%%A[/test]
    (echo [test]%%A[/test])>>output.txt
)

pause>nul & exit /b 0

Примечание: то же самое о решение было предложено LotPings в комментариях.Он адаптирован не для отправки вывода всего цикла for, а для команды echo, что дает тот же результат.

0 голосов
/ 15 февраля 2019

Вот как преобразовать данные из командной строки Windows:

powershell -c "cat input.txt | %{\"[test]$_[/test]\"} > output.txt"

В качестве альтернативы, если вы можете запустить ее прямо из PowerShell, это будет:

cat test.txt | %{"[test]$_[/test]"} > output.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...