|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Получить диапазон строк из файла, изменить текст по шаблону и перезап. файл с изм. |
|
PowerShell - [решено] Получить диапазон строк из файла, изменить текст по шаблону и перезап. файл с изм.
|
Старожил Сообщения: 286 |
Добрый.
нужно: - получить дипазон строк из файла, строго по номеру* (начиная с 5 и до 1000) * значение в этом диапазоне постоянно меняются - форматировать полученный текст (это уже в коде есть) - положить форматированный текст в первоначальный файл по тем же координатам откуда брали изначально (начиная с 5 и до 1000) пробовал так: $content = (get-content -encoding utf8 -path "выкладка.txt")[4..1000] $format_text = $content -replace "<..>", "" -replace "<...>", "" -replace '<', "" -replace '>', "" (get-content -encoding utf8 -path "выкладка.txt")[0..1000] -replace "$content", "$format_text" пример входящего txt: Строка1 *всегда разная Строка2 *всегда пустая Строка3 *всегда разная Строка4 *всегда пустая Какой-то текст <><...><..> еще текст какой-то текст какой-то текст *** пустые строки, перенос строк (если они есть) в указанном дипазоне (от 5 до 1000) - должны остаться, чтобы после замены форматированный текст не был весь в одну строку. Помогите с кодом пожалуйста. |
|
Отправлено: 11:34, 25-06-2021 |
Старожил Сообщения: 286
|
Профиль | Отправить PM | Цитировать upd.
Впринципе подошел с другой стороны: $name = (get-content -encoding utf8 -path "$tmp1\выкладка.txt")[0] $url = (get-content -encoding utf8 -path "$tmp1\выкладка.txt")[2] $text = (get-content -encoding utf8 -path "$tmp1\выкладка.txt")[4..1000] -replace "<...>", "" -replace "<..>", "" -replace "<", "" -replace ">", "" New-Item -Path "$tmp1\выкладка.txt" -ItemType file -force add-content -path "$tmp1\выкладка.txt" "$name`n`n$url`n`n$text" -encoding utf8 Как это исправить? here-string не могу использовать, т.к бывают знаки которые не поддерживаются. |
Последний раз редактировалось 9119, 25-06-2021 в 18:25. Отправлено: 18:03, 25-06-2021 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 992
|
Профиль | Сайт | Отправить PM | Цитировать |
Отправлено: 19:10, 25-06-2021 | #3 |
Старожил Сообщения: 286
|
Профиль | Отправить PM | Цитировать Elven,
текст вывелся как надо. но теперь между строками нет пустых. `n была не просто так. сейчас получили без пустых строк между, а они нужны. upd. получилось. правда теперь почему-то делает по 2 пустых строки) а надо по одной) |
Последний раз редактировалось 9119, 25-06-2021 в 20:35. Отправлено: 20:01, 25-06-2021 | #4 |
Старожил Сообщения: 286
|
Профиль | Отправить PM | Цитировать |
|
Отправлено: 20:45, 25-06-2021 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать 9119, вообще, на будущее, везде, где Вы пишете про некий файл с неким содержимым — всегда выкладывайте упакованный в архив образец этого файла.
|
Отправлено: 09:15, 26-06-2021 | #6 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Вопрос как из одного файла скопировать весь текст в другой файл ? | turbolover | Скриптовые языки администрирования Windows | 6 | 26-08-2019 11:12 | |
Любой язык - Выборка из текстового файла по шаблону | DSU | Скриптовые языки администрирования Windows | 5 | 22-12-2018 15:53 | |
CMD/BAT - Добавление строк по шаблону... | adrobkov@vk | Скриптовые языки администрирования Windows | 4 | 03-09-2013 04:36 | |
CMD/BAT - поиск строк по шаблону и запись в отдельный файл | AVTS | Скриптовые языки администрирования Windows | 4 | 13-07-2012 00:51 | |
CMD/BAT - [решено] Дописать текст из файла в файл | GoldenSuslik2 | Скриптовые языки администрирования Windows | 1 | 13-06-2011 15:22 |
|