Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Перемещение всех файлов из временной в рандомною директорию... (http://forum.oszone.net/showthread.php?t=322661)

angel_lyucifer 11-01-2017 20:38 2702759

Перемещение всех файлов из временной в рандомною директорию...
 
Всем привет, есть две директории одна директория временная другая постоянная.
В постоянной директории есть поддиректория - 2 папки с рандомными именами.
Одна папка весит больше, другая меньше. Большая содержит файл cookies.
Мне нужно, чтобы скрипт находил в рандомных папках находил файл cookies, потом в эту же папку перемещал из временной директории все файлы.
Код:

Постоянная
%AppData%\Mozilla\Firefox\Profiles

Код:

Временная
%TEMP%\Firefox

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

Georgio 12-01-2017 00:40 2702795

Код:

@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 2702997

Цитата:

Цитата Georgio
Georgio»

Нет, ваш скрипт не работает... (

Iska 13-01-2017 05:36 2703145

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

angel_lyucifer 13-01-2017 19:16 2703344

Цитата:

Цитата Iska
Одного не пойму — с какого перепуга имена каталогов профилей 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 2703426

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

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

angel_lyucifer 14-01-2017 03:13 2703437

Тогда помогите пожалуйста добавить определённую строку из файла 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 2703439

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

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

angel_lyucifer 14-01-2017 21:09 2703613

Ясно, спасибо.


Время: 15:23.

Время: 15:23.
© OSzone.net 2001-