|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] как добавить несколько строк в кучу *.txt файлов |
|
CMD/BAT - [решено] как добавить несколько строк в кучу *.txt файлов
|
Пользователь Сообщения: 141 |
Имеется более 100 текстовых файлов в C:\Folder\*.txt
В них имеется текст максимум до 7 строчки, в низу все пусто. Нужно добавить в 8ю и 9ю строчку определенный текст В нужной директории и в нужном файле закидывая в ту папку батник и запуская его там я добавлял нужную мне строчку (строчки) таким путем таким путем я добавляю My-New-Text в 8ю строчку. Как переделать скрипт что-бы он обработал таким путем все *.txt файлы в (C:\Folder\*.txt) Буду очень признателен за помощь |
|
------- Отправлено: 19:20, 16-10-2022 |
fascinating rhythm Сообщения: 6690
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 19:56, 16-10-2022 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 141
|
Профиль | Отправить PM | Цитировать Цитата:
Цитата:
а что-бы просто добавить нужные строчки в известном файле можно просто продублировать вопрос был в другом |
||
------- Отправлено: 20:10, 16-10-2022 | #3 |
fascinating rhythm Сообщения: 6690
|
Профиль | Отправить PM | Цитировать В моём примере добавляется сразу две строки и сразу во все файлы.
|
------- Отправлено: 20:32, 16-10-2022 | #4 |
Пользователь Сообщения: 141
|
Профиль | Отправить PM | Цитировать DJ Mogarych,
Цитата:
Нашел рабочий метод. Может кому понадобится... Get-ChildItem C:\Folder\*.txt | ForEach-Object { $f = ($_ | Get-Content -ReadCount 0) $f[7] = 'я восьмой текст'; $f[8] = 'я девятый текст' Set-Content $_.FullName $f } Еще один код который можно использовать на все случаи жизни Get-ChildItem -Path 'C:\Folder' -Filter '*.txt' | ForEach-Object { $LineIndex = 0 $FileContent = Switch -File $_.FullName {Default { $LineIndex++ If ($LineIndex -Eq 8) {@' тут строка 8 тут строка 9 тут строка 10 тут строка 11 тут строка 12 # и т.д '@} $_}} Set-Content -Path $_.FullName -Value $FileContent} Только следует обратить внимание на то, что эти оба варианта не вставляют новые строки, а только обновляют (меняют) существующие. |
||
------- Последний раз редактировалось minutka15, 17-10-2022 в 06:01. Отправлено: 03:11, 17-10-2022 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Удаление строк из txt файлов | John87 | Скриптовые языки администрирования Windows | 21 | 13-10-2022 06:45 | |
Любой язык - [решено] Добавить блоки строк из одного txt файла в другие txt файлы | Alexander_88 | Скриптовые языки администрирования Windows | 7 | 06-07-2019 00:15 | |
Любой язык - [решено] Разделение одного txt файла на несколько txt файлов | Alexander_88 | Скриптовые языки администрирования Windows | 3 | 25-11-2018 23:50 | |
Любой язык - Удаление из txt файлов не нужных строк и дубликатов строк. | voler | Скриптовые языки администрирования Windows | 1 | 26-02-2018 14:10 | |
CMD/BAT - Сформировать из 1 файла несколько файлов с разным числом строк | nastasa | Скриптовые языки администрирования Windows | 6 | 11-05-2017 12:15 |
|