Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] как из bat файла дописать символ в текстовый файл?

Ответить
Настройки темы
CMD/BAT - [решено] как из bat файла дописать символ в текстовый файл?

Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день! при поиске по форуму ничего подходящего не нашёл.
Нужно из бат файла найти в тектовом файле определенную строку, и дописать в её начало символ ;. И ещё один вопрос, не помешает ли поиску символы $ и |уже прописанные в этои строке?

Отправлено: 20:30, 19-02-2011

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата idzs:
найти в тектовом файле определенную строку »
слишком туманно - что значит "определенную" - по номеру, полному, частичному совпадению или еще как?..

Цитата idzs:
не помешает ли поиску символы $ и |уже прописанные в этои строке? »
при желании можно учесть и это

Отправлено: 06:16, 20-02-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вот строка в текстовом файле, которая более не повторяется- Item01=$(ExecuteRoot)\strm\instshell.dll|IntegrEnabled, нужно через бат файл дописать в начало символ ; т.е. получится ;Item01=$(ExecuteRoot)\str.............

Отправлено: 11:08, 20-02-2011 | #3


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


как-то так:
Код: Выделить весь код
@echo off

CALL:MAIN file.txt "Item01=$(ExecuteRoot)\strm\instshell.dll|IntegrEnabled"
EXIT/b

:MAIN  %file_name% %commenting_line%
::----------------------------------
SETLOCAL DisableDelayedExpansion
(for /f "tokens=* delims=0123456789" %%a in ('type "%~1"^|findstr /n "$"') do (set "$a=%%a"
  SETLOCAL EnableDelayedExpansion
    if /i "!$a:~1!"=="%~2" (echo ;!$a:~1!) else echo(!$a:~1!
  ENDLOCAL
))>"%~dpn0.tmp"
copy /y "%~dpn0.tmp" "%~1" >nul&& del "%~dpn0.tmp"
ENDLOCAL& exit /b
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:26, 20-02-2011 | #4


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


amel27 большое спасибо! все работает!!!

Отправлено: 19:40, 20-02-2011 | #5


Новый участник


Сообщения: 6
Благодарности: 0

Профиль | Отправить PM | Цитировать


amel27 можно ещё один последний глупый вопрос? А как допустим убрать символ ; , если он в этой строке уже вписан вначале (отдельным батником)

Отправлено: 19:43, 21-02-2011 | #6


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


idzs, аналогично:
Код: Выделить весь код
@echo off

CALL:MAIN file.txt "Item01=$(ExecuteRoot)\strm\instshell.dll|IntegrEnabled"
EXIT/b

:MAIN  %file_name% %uncommenting_line%
::----------------------------------
SETLOCAL DisableDelayedExpansion
(for /f "tokens=* delims=0123456789" %%a in ('type "%~1"^|findstr /n "$"') do (set "$a=%%a"
  SETLOCAL EnableDelayedExpansion
    if /i "!$a:~1!"==";%~2" (echo !$a:~2!) else echo(!$a:~1!
  ENDLOCAL
))>"%~dpn0.tmp"
copy /y "%~dpn0.tmp" "%~1" >nul&& del "%~dpn0.tmp"
ENDLOCAL& exit /b

Отправлено: 03:49, 22-02-2011 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] как из bat файла дописать символ в текстовый файл?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] как дописать текст в текстовой файл rust-02 Скриптовые языки администрирования Windows 4 20-08-2010 03:16
CMD/BAT - [решено] Как с помощью bat-ника записать названия папок в текстовый файл? Nun-Nun Скриптовые языки администрирования Windows 9 23-02-2010 20:15
Разное - Как к названию файла динамически дописать дату? KillHunter Microsoft Windows 2000/XP 0 23-05-2008 15:23
[решено] как добавить путь к текущей директории в reg файл из bat файла ? mitiya Автоматическая установка приложений 7 27-03-2008 16:12
Как к названию файла динамически дописать дату? av_spb Microsoft Windows NT/2000/2003 4 09-11-2005 12:11




 
Переход