Valek271183 |
14-01-2013 22:54 2066824 |
Как скопировать с помощью BAT файл в профиль Firefox
Есть такой файл places.sqlite и его нужно копировать в корень профиля Firefox по адресу %appdata%\Mozilla\Firefox\Profiles\имя профиля.default\places.sqlite В папке Firefox есть файл profiles.ini и в нём прописана строка с названием профиля Path=Profiles/имя профиля.default Как с помощью BAT скопировать туда мой файл?
|
Код:
@echo off
set file=ПУТЬ К МОЕМУ\places.sqlite
for /f "delims=*" %%H in ('dir /s /b /a-d "%appdata%\Mozilla\Firefox\Profiles\places.sqlite"') do set adres="%%~dpH"
copy /y "%file%" %adres%
exit
|
Valek271183 |
15-01-2013 00:20 2066876 |
а если добавлю папку extensions содержание bat надо менять?
|
Цитата:
Цитата Valek271183
а если добавлю папку extensions »
|
куда? что за папка?
|
Valek271183 |
15-01-2013 00:25 2066880 |
вот по этому пути %appdata%\Mozilla\Firefox\Profiles\имя профиля.default\extensions мне нужно скопировать папку extensions
кажется bat неправильно написан, в адресе после %appdata%\Mozilla\Firefox\Profiles\ должно быть подставлено имя профиля которое хранится в файле profiles.ini в папке %appdata%\Mozilla\Firefox
|
Код:
@echo off
set file=ПУТЬ К МОЕМУ\places.sqlite
set exten=Куда копируем папку
for /f "delims=*" %%H in ('dir /s /b /a-d "%appdata%\Mozilla\Firefox\Profiles\places.sqlite"') do set adres="%%~dpH"
copy /y "%file%" %adres%
xcopy /e /y /c /h %adres%extensions\ "%exten%\"
exit
|
Valek271183 |
15-01-2013 00:48 2066905 |
в адресе после папки Profiles должна быть папка с "именем_профиля.default" вот в неё и нужно скопировать файл places.sqlite, а имя этого профиля всегда разное и хранится оно в файле %appdata%\Mozilla\Firefox\profiles.ini
|
Valek271183, я с первого раза понял, что
Цитата:
Цитата Valek271183
в адресе после папки Profiles должна быть папка с "именем_профиля.default" »
|
для этого и есть строка
Цитата:
Цитата zion87
for /f "delims=*" %%H in ('dir /s /b /a-d "%appdata%\Mozilla\Firefox\Profiles\places.sqlite"') do set adres="%%~dpH" »
|
код ищет файл places.sqlite во всех каталогах %appdata%\Mozilla\Firefox\Profiles\ .... не именно в этом а во всех
Код:
@echo off
for /f "delims=*" %%H in ('dir /s /b /a-d "%appdata%\Mozilla\Firefox\Profiles\places.sqlite"') do echo "%%~dpH" && pause
^^^запустите и убедитесь.... ^^^
если вы уж так хотите взять адрес профиля именно из файла то вот
Код:
@echo off
for /f "tokens=*" %%A in (' more +6 "%appdata%\Mozilla\Firefox\profiles.ini" ') do set prof=%%A
echo %prof:~14% && pause
|
Valek271183 |
17-01-2013 00:46 2068524 |
Что-то не получается,
Код:
set file=C:\places.sqlite
for /f "delims=*" %%H in ('dir /s /b /a-d "%appdata%\Mozilla\Firefox\Profiles\places.sqlite"') do set adres="%%~dpH"
copy /y "%file%" %adres%
pause
Пишет
Код:
C:\>set file=C:\places.sqlite
C:\>for /F "delims=*" %H in ('dir /s /b /a-d "C:\Users\1\AppData\Roaming\Mozilla
\Firefox\Profiles\places.sqlite"') do set adres="%~dpH"
Файл не найден
C:\>copy /y "C:\places.sqlite"
Невозможно скопировать файл поверх самого себя.
Скопировано файлов: 0.
C:\>pause
Для продолжения нажмите любую клавишу . . .
Что то не так :(
|
- ваш пользователь точно 1 ???
если имя вашего профиля содержит русские символы(например C:\Users\Вася\), то есть смысл поменять кодировку
|
Valek271183 |
17-01-2013 08:46 2068611 |
да - имя пользователя 1, да и адрес %appdata% :)
|
Видимо у Вас там (в папке "%appdata%\Mozilla\Firefox\Profiles\*.default") нет такого файла ( places.sqlite)
Попробуйте искать саму папку (надеюсь, что сама папка то у Вас существует!?) :
Код:
@echo off
set file=ПУТЬ К МОЕМУ\places.sqlite
for /f "delims=" %%H in ('dir /s /b /ad "%appdata%\Mozilla\Firefox\Profiles\*.default"') do set adres=%%H
copy /y "%file%" "%adres%\places.sqlite"
exit
|
Valek271183 |
17-01-2013 16:29 2068901 |
Ну как в коде видно файл places.sqlite находится в корне диска C:\ и он не может скопировать поверх самого себя, там он точно есть.
bat запускаю из корня диска C:\ там же лежит и файл, так же пробовал запустить BAT с рабочего стола написав без пути set file=places.sqlite? потому что файл лежал рядом (UAC отключен, переменные вроде все правильно)
|
Valek271183 |
17-01-2013 17:46 2068967 |
%appdata%\Mozilla\Firefox\Profiles\*.default , конечно его там нет, мне его туда надо скопировать... с диска C:\
|
Цитата:
Цитата Valek271183
конечно его там нет, мне его туда надо скопировать »
|
надо было сразу сказать что он там отсутствует ... надеюсь файл signons.sqlite там присутствует???
Код:
@echo off
set file=C:\places.sqlite
for /f "delims=*" %%H in ('dir /s /b /a-d "%appdata%\Mozilla\Firefox\Profiles\signons.sqlite"') do set adres="%%~dpH"
copy /y "%file%" %adres%
exit
|
Код:
@Echo Off
:: путь к моему файлу, который нужно скопировать
Set myfile=C:\places.sqlite
:: путь к моей папке, которую нужно скопировать
Set myfolder=C:\extensions
:: путь к ini файлу, из которого нужно прочитать название папки профиля
Set pathini=%appdata%\Mozilla\Firefox\profiles.ini
:: путь, по которому нужно будет создать этот профиль и потом скопировать мои файл и папку
Set outfolder=%appdata%\Mozilla\Firefox
:: читаем название папки профиля из ini файла
For /f "tokens=2 delims==" %%i In ('FindStr /b "Path=" "%pathini%"') Do Set fPath=%%i
:: получаем полный путь папки профиля и правим в нем прямой слеш на обратный
Set fPath=%outfolder%\%fPath:/=\%
Echo %fPath%
:: проверяем наличие папки профиля, и если ее нет, то создаем
If Not Exist "%fPath%" MD "%fPath%"
:: копируем мой файл в папку профиля
Copy /y "%myfile%" "%fPath%\places.sqlite"
:: копируем мою папку в папку профиля (ключи для xCopy можно изменить под собственные задачи)
xCopy /e /i /h /r /k /y "%myfolder%" "%fPath%\extensions"
Pause
Exit
|
Valek271183 |
18-01-2013 21:30 2069897 |
gora, спасибо ОГРОМНОЕ, это то что мне нужно!
|
Время: 03:35.
© OSzone.net 2001-