![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - скрипт для замены текста в файле |
|
|
Любой язык - скрипт для замены текста в файле
|
Ветеран Сообщения: 968 |
есть каталог с папками(профилями почты Mozilla Thunderbird)
в каждой папке данного каталога есть некий заведомо известный файл(profiles.ini) с заведомо известным содержанием: Скрытый текст
[General] StartWithLastProfile=1 [Profile0] Name=default IsRelative=0 Path=\\S680000FILE\MAIL\almazova_iv требуется изменить рекурсивно(во всех папках данного каталога) файл profiles.ini вот так: Скрытый текст
[General] StartWithLastProfile=1 [Profile0] Name=default IsRelative=0 Path=\\S680000FILE3\MAIL\almazova_iv а потом вернуть как было. |
|
Отправлено: 13:14, 20-11-2014 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Э… зачем?
|
Отправлено: 14:35, 20-11-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать "Туда":
@echo off set "dir=D:\Test" set "file=profiles.ini" for /f "delims=" %%i in ('"2>nul dir /a-d/b/s "%dir%\%file%""') do<"%~f0">"%%i" more +9 exit /b ####################################################################################### [General] StartWithLastProfile=1 [Profile0] Name=default IsRelative=0 Path=\\S680000FILE3\MAIL\almazova_iv . "Обратно": @echo off set "dir=D:\Test" set "file=profiles.ini" for /f "delims=" %%i in ('"2>nul dir /a-d/b/s "%dir%\%file%""') do<"%~f0">"%%i" more +9 exit /b ####################################################################################### [General] StartWithLastProfile=1 [Profile0] Name=default IsRelative=0 Path=\\S680000FILE\MAIL\almazova_iv . |
Отправлено: 14:39, 20-11-2014 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Georgio, по рабоче-крестьянски
![]() Цитата batyaPS:
|
|
Отправлено: 15:01, 20-11-2014 | #4 |
Ветеран Сообщения: 968
|
Профиль | Отправить PM | Цитировать Georgio,
almazova_iv будет меняться т.е. это имя пользователя кому принадлежит профиль, практически почти всегда имя папки(имя профиля) соответствует этой строчке т.е. строку в файле вида Path=\\S680000FILE\MAIL\%переменная% нужно сменить на Path=\\S680000FILE3\MAIL\%переменная% и вообще отлично бы, если в скрипт внести переменную взамен S680000FILE и S680000FILE3 что сменив значение переменной менять все профили одним скриптом. Цитата Iska:
|
||
Последний раз редактировалось batyaPS, 20-11-2014 в 15:17. Отправлено: 15:12, 20-11-2014 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 15:20, 20-11-2014 | #6 |
Ветеран Сообщения: 968
|
Профиль | Отправить PM | Цитировать хотя для меня в конкретной задаче вполне удовлетворил просто поиск значения в файле и его замена
S680000FILE на S680000FILE3 Iska, пардон, я имел ввиду что содержание нам известно, но с некоторыми изменчивыми переменными хотел просто для наглядности выложить содержимое. |
Отправлено: 15:21, 20-11-2014 | #7 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать @echo off set "dir=D:\Test" set "file=profiles.ini" set "var=almazova_iv" :: Если нужно изменить строку, то "act=3". :: Если нужно "отозвать" изменение, то "act=". set act= for /f "delims=" %%i in ('"findstr /eilmsc:"%var%" "%dir%\%file%""') do<"%~f0">"%%i" more +14&<nul>>"%%i" (set /p="Path=\\S680000FILE%act%\MAIL\%var%"& echo.) exit /b ###################### [General] StartWithLastProfile=1 [Profile0] Name=default IsRelative=0 |
Отправлено: 17:34, 20-11-2014 | #8 |
Ветеран Сообщения: 968
|
Профиль | Отправить PM | Цитировать Georgio,
не к almazova_iv не надо привязываться вместо данного пользователя может быть что угодно. изменять требуется только S680000FILE на S680000FILE3 и подобное ну S680000FILE1 или S680000FILE2 |
Отправлено: 11:46, 21-11-2014 | #9 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать @echo off set "dir=D:\Test" set "file=profiles.ini" :: Если нужно изменить строку, то "act=3". :: Если нужно "отозвать" изменение, то "act=". set act= for /f "tokens=1,2,3 delims=:" %%i in ('findstr /bisc:"Path=\\\\S680000FILE" "%dir%\%file%"') do for /f "tokens=4 delims=\" %%l in ("%%k") do<"%~f0">"%%i:%%j" more +13&<nul>>"%%i:%%j" (set /p="Path=\\S680000FILE%act%\MAIL\%%l"& echo.) exit /b ###################### [General] StartWithLastProfile=1 [Profile0] Name=default IsRelative=0 |
Отправлено: 13:22, 21-11-2014 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
TextReplace - Программа для поиска и замены текста в любых файлах | AZJIO | AutoIt | 6 | 02-02-2018 20:56 | |
CMD/BAT - [решено] Нужен bat для замены значения в определенном файле. | Asybra | Скриптовые языки администрирования Windows | 9 | 04-12-2013 05:12 | |
Replacer - утилита для замены подстроки в файле | apozlevich | AutoIt | 4 | 16-10-2013 23:37 | |
Любой язык - Скрипт для замены | Kira1 | Скриптовые языки администрирования Windows | 2 | 15-07-2013 18:39 | |
CMD/BAT - [решено] Подскажите скрипт или утилиту для перевода текста в txt-файле в другую раскладку | Trueman777 | Скриптовые языки администрирования Windows | 7 | 23-09-2011 22:43 |
|