Войти

Показать полную графическую версию : Перемещение всех файлов из временной в рандомною директорию...


angel_lyucifer
11-01-2017, 20:38
Всем привет, есть две директории одна директория временная другая постоянная.
В постоянной директории есть поддиректория - 2 папки с рандомными именами.
Одна папка весит больше, другая меньше. Большая содержит файл cookies.
Мне нужно, чтобы скрипт находил в рандомных папках находил файл cookies, потом в эту же папку перемещал из временной директории все файлы.
Постоянная
%AppData%\Mozilla\Firefox\Profiles
Временная
%TEMP%\Firefox

Заранее благодарю.

Georgio
12-01-2017, 00:40
@echo off

set "Profiles=%AppData%\Mozilla\Firefox\Profiles"
set "Temporary=%TEMP%\Firefox"
set "File=cookies"

2>nul (for /f "delims=" %%i in ('dir /a-d/b/s "%Profiles%\%File%"') do move "%Temporary%\*" "%%~dpi")

angel_lyucifer
12-01-2017, 19:00
Georgio»
Нет, ваш скрипт не работает... (

Iska
13-01-2017, 05:36
Одного не пойму — с какого перепуга имена каталогов профилей Firefox вдруг стали «рандомными»?! Они строго определены в profiles.ini. Файла «cookies» я там в принципе не наблюдаю, но вижу cookies.sqlite и ещё пару похожих.

angel_lyucifer
13-01-2017, 19:16
Одного не пойму — с какого перепуга имена каталогов профилей Firefox вдруг стали «рандомными»?! Они строго определены в profiles.ini. Файла «cookies» я там в принципе не наблюдаю, но вижу cookies.sqlite и ещё пару похожих. »

У меня такой путь до файла cookies.sqlite.
%APPDATA%\Mozilla\Firefox\3b3vqitz.default

У моего друга такой путь до файла cookies.sqlite.
%APPDATA%\Mozilla\Firefox\m6pxq8ib.default-1458211477908

А у моей девушки, третий путь...
То есть на каждом компьютере имена папок разные, и даже их может быть не одна.

Iska
14-01-2017, 01:29
angel_lyucifer, я понимаю. Но эти пути вовсе не «рандомные». Я же пишу, что они все прописаны в файле profiles.ini. То есть, нужно определить в реестре, установлен ли Mozilla Firefox, определить версию, определить путь к нему, определить путь к файлу profiles.ini, прочитать его, определить искомый путь к профилю по умолчанию (или выбрать иной искомый путь из перечисленных в нём профилей, буде надобность), и только затем танцевать от этого. То есть, профиль может вообще лежать вовне %UserProfile%.

Исходя из того факта, что файл этот в кодировке UTF-8, а дальше, возможно, потребуется разбор форматов xml и/или json — удобнее сие сразу начинать делать в PowerShell.

angel_lyucifer
14-01-2017, 03:13
Тогда помогите пожалуйста добавить определённую строку из файла profiles.ini в переменную?
[General]
StartWithLastProfile=1
[Profile0]
Name=default
IsRelative=1
Path=Profiles/3b3vqitz.default
Default=1

Что бы искал в файле ключевое слово (Path= ) и патом добавить Profiles/3b3vqitz.default в переменную.

Iska
14-01-2017, 03:34
angel_lyucifer, строк с Path может быть несколько. Нужно: определить, какой профиль является профилем по умолчанию (Default=1), затем выбрать из этого раздела значение параметра Path, затем проверить, является ли указанный путь абсолютным или относительным (IsRelative) и при необходимости — скорректировать его.

Играться с таким на пакетных файлах — увольте.

angel_lyucifer
14-01-2017, 21:09
Ясно, спасибо.




© OSzone.net 2001-2012