|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Замена текста в txt |
|
|
CMD/BAT - [решено] Замена текста в txt
|
Пользователь Сообщения: 64 |
Профиль | Отправить PM | Цитировать Прежде всего хочу сказать, что перелазил все темы, но так и не нашёл подходящую, поэтому решил создать новую .
В общем такая проблема. У нас есть файл 1.txt и в нём такое содержание: Цифровой клавиатурой называется совокупность близко расположенных клавиш с цифрами, предназначенных для ввода чисел (например, номеров). Существует два различных варианта расположения цифр на таких клавиатурах. В телефонах используется клавиатура, в которой числовые значения клавиш возрастают слева направо и сверху вниз. Аналогичный тип клавиатуры используется в домофонах и других средствах аудиосвязи (например, в программе Skype), а также на пультах дистанционного управления (например, на пульте управления телевизором). ### Внимание! Есть пару условий! Проблема должна решаться только при помощи bat или cmd и никаких дополнительных программ, текст может быть любой, любого размера, любого кол-во строк букв символов и тд, но в конце всегда будут "###". Заранее спасибо ! |
|
Отправлено: 14:50, 01-06-2011 |
Пользователь Сообщения: 64
|
Профиль | Отправить PM | Цитировать Кстати если не получается, то можно эти три символа перенести и в первую строку на первое место то есть перед самим текстом. Без разницы, главное чтобы работало.
|
Отправлено: 15:08, 01-06-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 64
|
Профиль | Отправить PM | Цитировать @echo off
setlocal enabledelayedexpansion Set infile=1.txt Set find=### Set replace=Автор Петрович. @echo off setlocal enabledelayedexpansion set COUNT=0 for /F "tokens=* delims=," %%n in (!infile!) do ( set LINE=%%n set TMPR=!LINE:%find%=%replace%! Echo !TMPR!>>TMP.TXT ) move TMP.TXT %infile%le% |
Отправлено: 16:20, 01-06-2011 | #3 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать У меня похожая ситуация, но не такая. Нужно заменить одну строчку на три. Как это сделать?
заменить на Можно это как-нибудь реализовать? |
Отправлено: 17:21, 05-09-2011 | #4 |
Разный Сообщения: 1294
|
Профиль | Отправить PM | Цитировать Цитата xGETSx:
|
||
Отправлено: 18:44, 05-09-2011 | #5 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать может и проще, но нужно так. Я ж не себе пишу, а в программу вставляю.
Не обязательно это делать средствами bat, можно и программу из-под него запустить. |
Отправлено: 18:55, 05-09-2011 | #6 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать xGETSx, например так (не проверялось):
Файл для поиска включения указывается аргументом скрипта: |
Отправлено: 22:24, 05-09-2011 | #7 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать Не работает. Может потому что у меня файл не .cfg?
|
Отправлено: 22:55, 05-09-2011 | #8 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Всё может быть. Кодировка, формат строк и т.д.
Если файл не слишком большого объёма — обязательно упакуйте в rar/7z, выложите на обменник, ссылку сюда или непосредственно в личку. Посмотрим. |
Отправлено: 23:01, 05-09-2011 | #9 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Файл получил.
У меня на Вашем файле — работает. В том плане, что ищет, находит и меняет. Результат в итоге получается, но, очевидно не такой, как нужен, ибо Ваш текстовый файл, как Вы верно указали, формата UNIX, следовательно концы строк у него LF, и, соответственно, в приведённом выше коде достаточно заменить: strReplace = "assert(package_extract_file(""boot.img"", ""/tmp/boot.img"")," & vbCrLf & _ "write_raw_image(""/tmp/boot.img"", ""boot"")," & vbCrLf & _ "delete(""/tmp/boot.img""));" для получения ожидаемого результата. |
Отправлено: 23:56, 05-09-2011 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Сравнение и замена в файлах .txt | Deep2007 | Скриптовые языки администрирования Windows | 4 | 19-11-2010 19:08 | |
Поиск текста в txt | Centrinar | AutoIt | 5 | 23-07-2010 19:59 | |
Разное - [решено] FoxPro 2.6 Замена фрагментов текста в txt-файле | Pashka | Программирование и базы данных | 7 | 18-01-2010 19:20 | |
CMD/BAT - [решено] Как прочесть из файла .txt только первую строчку текста. | Sdib121 | Скриптовые языки администрирования Windows | 6 | 15-08-2009 14:26 | |
Офис и Текст - Замена текста | Котяра | Программное обеспечение Windows | 1 | 29-09-2008 13:51 |
|