|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - анализирование текста файла prefs.js и вписывание определённых значений в него |
|
CMD/BAT - анализирование текста файла prefs.js и вписывание определённых значений в него
|
Новый участник Сообщения: 6 |
Хочется написать автоматическую установку thunderbird с нужными плагинами и параметрами. Удачно то что thunderbird не хранит свои настройки в реестре а хранит их в файле prefs.js.
Я написал батник, который потихому thunderbird ставит, копирует нужные плагины, каталоги и данный файл prefs.js. Сделал вывод, что можно батником "донастроить" и "доавтоматизировать". Предварительно в батнике есть: set /P name="Введите Фамилию и Имя через пробел: " set /P mail="Введите mail: " эти 2 переменные как раз и будут фигурировать в prefs.js Задача: нужно, пробежатся по файлу и внести нужные параметры в нужных местах. строки разбросаны по файлу, но их можно реорганизовать, и поставить в любое место. user_pref("mail.identity.id1.archive_folder", "imap://%mail%/Archives"); user_pref("mail.identity.id1.draft_folder", "imap://%mail%/Drafts"); user_pref("mail.identity.id1.fcc_folder", "imap://%mail%/Sent"); user_pref("mail.identity.id1.fullName", "%name%"); user_pref("mail.identity.id1.stationery_folder", "imap://%mail%/Templates"); user_pref("mail.identity.id1.useremail", "%mail%"); user_pref("mail.server.server1.directory", "C:\\thunder-mail\\{%mail%}"); user_pref("mail.server.server1.directory-rel", "[ProfD]../../../../../../thunder-mail/{%mail%}"); user_pref("mail.server.server1.name", "%mail%"); user_pref("mail.server.server1.spamActionTargetAccount", "imap://%mail%"); user_pref("mail.server.server1.userName", "{Здесь особая конструкция, нужно первые 2 буквы оставить ru, 5 первых букв фамилии и первая буква имени(такой стандарт)}"); user_pref("mail.smtpserver.smtp1.username", "{тоже самое первые 2 буквы оставить ru, 5 первых букв фамилии и первая буква имени(такой стандарт)}"); это пожалуй самая сложная часть мероприятия. Для себя логически разделяю всё на 3 части. 1.Вставить переменную %mail% по всему файлу после значения imap://, предположительно можно в файле проставить изначальный текст из значений, например =====, и делать замену на переменную %mail%(в блокноте это действует как заменить весь текст при исходном и целевом значении) 2.Аналогично первому пункту, но вставить переменную, после thunder-mail/ и thunder-mail\\, всё таки если будут изначально проставлены значения например ===== и будут заменяться, то оба пункта реализуются одним методом(мне он кажется более реалистичным) 3.С генерацией пользовательского имени, при котором 2 первые буквы ru, 5 первых букв из переменной %name% и первая буква из этой же переменной но то, что после пробела(так как ввод предполагает что сначала идёт фамилия, через пробел имя. Если упростить задачу можно сделать ввод имени и фамилии раздельными переменными - это опционально). Задача не тривиальная, но очень поможет в работе. Спасибо заранее друзья, надеюсь на вашу помощь. |
|
Отправлено: 00:07, 14-01-2013 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Лично у меня желания не возникает: мешанина из букв. Учитесь использовать заглавные буквы, знаки препинания и Теги форума. Как научитесь — вот это будет на самом деле круто.
|
Отправлено: 00:54, 14-01-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать друзья извиняюсь за свою суетность. Первая часть была решена. Путём простого вывода в файл параметров.
т.е. set file=%APPDATA%\Thunderbird\Profiles\prefs.js ну и следом echo user_pref("mail.identity.id1.archive_folder", "imap://%mail%/Archives");>>%file% echo user_pref("mail.identity.id1.draft_folder", "imap://%mail%/Drafts");>>%file% Чуть позже разобрался как сделать генерацию пользовательского имени. Всё таки разделил запрос вписывания фамилии и имени на 2 переменные. Конструкция выглядит вот так. echo user_pref("mail.smtpserver.smtp1.username", "ru%sname:~0,5%%name:~0,1%");>>%file% Работаю далее очень втянулся))). Всё равно спасибо. |
Последний раз редактировалось psixoz-korvin, 14-01-2013 в 13:31. Причина: дополнение Отправлено: 11:39, 14-01-2013 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - [решено] Скрипт для изменения настроек Mozilla Thunderbird (prefs.js) | batyaPS | Скриптовые языки администрирования Windows | 11 | 14-06-2012 16:06 | |
VBS/WSH/JS - [решено] Замена определённых символов и вставка текста. | aggressor_ | Скриптовые языки администрирования Windows | 9 | 29-05-2012 15:06 | |
[решено] Вписывание прогресс-бара в гуи-форму | saavaage | AutoIt | 9 | 09-08-2010 22:16 | |
CMD/BAT - [решено] Скрипт для подключения на FTP-сервер и заливания на него файла | James Marsh | Скриптовые языки администрирования Windows | 2 | 10-04-2010 18:10 | |
Удаление текста из файла и запиь нового | wwe | AutoIt | 6 | 21-02-2010 09:28 |
|