1

Я хочу иметь возможность быстро создавать (и удалять) профили Firefox для тестирования в Win 7 SP1.

Для этого я создал командный файл с одной строкой:

firefox.exe -CreateProfile test && firefox.exe -profilemanager

(Я упростил это для публикации, удалив полный путь к исполняемому файлу.)

Это прекрасно работает, но оставляет фоновое окно DOS открытым, которое не закрывается, пока Firefox не будет закрыт.

Есть ли способ, которым я могу сделать это без фонового процесса, ожидающего закрытия Firefox?

(В старые добрые времена DOS вы могли вручную добавить Ctrl+Z в конец последней строки в пакетном файле, чтобы завершить пакетный файл с выполнением последней команды, но я не смог заставить что-нибудь подобное работать в Windows.)

Я бы предпочел не устанавливать никаких дополнительных языков сценариев.

Бонусные баллы: если вы можете найти способ чистого удаления профиля с помощью аналогичного метода.

Обновление: из любопытства я попытался просто создать ярлык ссылки с помощью вышеуказанной команды, но не сработал.

2 ответа2

2

Это должно закрыться автоматически. Если это не так, попробуйте это:

start "" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -CreateProfile test && start "" "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -profilemanager
2

Вы можете полностью обойтись без менеджера профилей:

@echo off & setlocal
set profile=%TEMP%\fxprofile
if exist "%profile%" rd/s/q "%profile%"
md "%profile%"
start firefox -profile "%profile%"

(Поскольку я не на Windows сейчас, я не уверен, что start даже необходим)

Однако обратите внимание, что Windows 7 уже имеет несколько сред выполнения сценариев, отличных от cmd.exe - в частности, cscript (поддерживающий JScript и VBScript), а также PowerShell (способный загрузить любую сборку .NET).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .