Параметры 1cv8.exe: пакетный запуск 1С без открытия окна
Содержание
Отдельного окна «командная строка» внутри 1С нет. Командная строка 1С — это ключи, с которыми запускают исполняемый файл платформы 1cv8.exe из консоли Windows, ярлыка, bat-файла или Планировщика заданий. Сам файл лежит в C:\Program Files\1cv8\<номер версии>\bin\.
Многие ищут консоль в меню программы или в «Функциях для технического специалиста». Её там нет. Зато есть поле Дополнительные параметры запуска в свойствах базы в окне запуска: туда пишут те же ключи, что и в консоли, и 1С подставляет их при каждом входе.
Где найти исполняемый файл платформы и как его запустить
Платформа 8.3 ставится в папку с номером версии. Если на компьютере несколько версий, папок будет несколько, и у каждой свой bin.
| Файл | Где лежит | Для чего |
|---|---|---|
1cv8.exe | C:\Program Files\1cv8\8.3.xx.xxxx\bin\ | толстый клиент и Конфигуратор, все пакетные операции |
1cv8c.exe | там же | тонкий клиент, только режим Предприятия |
1cestart.exe | C:\Program Files\1cv8\common\ | стартер: окно со списком баз, сам выбирает версию |
ibcmd.exe | bin нужной версии (платформа 8.3.14 и выше) | автономная утилита администрирования файловых и серверных баз |
32-разрядная платформа ставится в C:\Program Files (x86)\1cv8\. На Linux путь вида /opt/1cv8/x86_64/8.3.xx.xxxx/1cv8.
Быстрее всего открыть консоль так:
- Нажмите
Win + R, введитеcmd, нажмите Enter. - Перейдите в папку платформы:
cd "C:\Program Files\1cv8\8.3.24.1548\bin"(подставьте свою версию). - Запустите
1cv8.exeс нужным режимом и ключами.
1cv8.exe ENTERPRISE /F"D:\Bases\Buh" /N"Администратор" /P"123"
💡 Узнать точный номер версии проще всего в окне запуска 1С: откройте базу, затем в главном меню выберите Справка → О программе. Строка «1С:Предприятие 8.3 (8.3.xx.xxxx)» и есть имя папки.
Режим запуска — первое слово после имени файла
- 🟢
ENTERPRISE— пользовательский режим, обычная работа с базой. - 🛠️
DESIGNER— Конфигуратор. С ключом/DisableStartupDialogsи командой вроде/DumpIBон работает пакетно: без окна, выполнил и закрылся. - 📁
CREATEINFOBASE— создать новую пустую базу.
Без режима 1cv8.exe откроет обычное окно выбора баз.
Ключи командной строки 1С для подключения и автоматизации
Ключи пишутся через пробел, значение — сразу после ключа в кавычках, без пробела: /F"D:\Bases\Buh". Регистр букв в именах ключей не важен.
Какую базу открыть
| Ключ | Что делает | Пример |
|---|---|---|
/F | путь к файловой базе (папка с 1Cv8.1CD) | /F"D:\Bases\Buh" |
/S | серверная база: сервер и имя базы на кластере | /S"srv01\buh" |
/IBName | база по имени из списка в окне запуска | /IBName"Бухгалтерия ООО Ромашка" |
/N | имя пользователя 1С | /N"Администратор" |
/P | пароль | /P"secret" |
/WA- | запретить вход по учётной записи Windows | /WA- |
/WA- нужен, когда в базе включена аутентификация операционной системы, а вы хотите войти конкретным пользователем 1С. Без него платформа сначала попробует войти под текущей учётной записью Windows.
Как вести себя после запуска
- 🔇
/DisableStartupMessages— подавить стартовые предупреждения (например, о том, что конфигурация базы отличается от основной). - 🔇
/DisableStartupDialogs— не показывать диалоги выбора базы и входа. Обязателен для пакетного режима: иначе при ошибке 1С повиснет на окне, и скрипт будет ждать вечно. - ▶️
/Execute"D:\Tools\Obrabotka.epf"— сразу после входа открыть внешнюю обработку . Работает в режимеENTERPRISE. - 📨
/C"строка"— передать произвольную строку в программу. Внутри конфигурации её читают через глобальное свойствоПараметрЗапуска. - 🔑
/UC"КодРазрешения"— войти в базу, на которую установлена блокировка начала сеансов с кодом разрешения. - 🧹
/ClearCache— очистить кэш клиента перед запуском. - 🧭
/RunModeOrdinaryApplicationи/RunModeManagedApplication— открыть толстый клиент в обычном или управляемом приложении.
Эти же ключи можно вписать в поле Дополнительные параметры запуска. Оно находится на последнем шаге мастера, который открывается кнопкой Изменить в окне запуска 1С. Например, /ClearCache в этом поле будет чистить кэш
при каждом входе в эту базу.
Обработка, которая работает сама
Типичная автоматизация: ночью открыть базу , выполнить обработку и закрыть 1С. Обработке нужна команда завершения, иначе окно останется открытым до утра.
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" ENTERPRISE /F"D:\Bases\Buh" /N"Робот" /P"pwd" /DisableStartupMessages /Execute"D:\Tools\Zagruzka.epf" /C"auto"
В модуле формы обработки при открытии проверяют ПараметрЗапуска: если там auto, выполняют работу и в конце вызывают ЗавершитьРаботуСистемы(Ложь). Ложь означает «не спрашивать подтверждение у пользователя».
При открытии внешней обработки платформа может показать предупреждение о безопасности. Без человека у экрана запуск на нём и остановится. Для служебного пользователя снимите флажок «Защита от опасных действий» в его свойствах в Конфигураторе: Администрирование → Пользователи, затем двойной щелчок по пользователю.
Пакетный режим Конфигуратора: выгрузка, обновление, проверка
Самое полезное применение командной строки — регламентные операции через DESIGNER. Окно Конфигуратора не открывается, операция выполняется в фоне.
| Задача | Ключ | Пример |
|---|---|---|
| Выгрузить базу в .dt | /DumpIB | /DumpIB"E:\Backup\buh.dt" |
| Загрузить базу из .dt | /RestoreIB | /RestoreIB"E:\Backup\buh.dt" |
| Выгрузить конфигурацию в .cf | /DumpCfg | /DumpCfg"E:\Backup\buh.cf" |
| Загрузить конфигурацию из .cf | /LoadCfg | /LoadCfg"D:\Upd\new.cf" |
| Обновить конфигурацию из .cfu | /UpdateCfg | /UpdateCfg"D:\Upd\1cv8.cfu" |
| Применить изменения к базе данных | /UpdateDBCfg | дописывается к /LoadCfg или /UpdateCfg |
| Тестирование и исправление | /IBCheckAndRepair | /IBCheckAndRepair -ReIndex -RecalcTotals |
Ночная выгрузка файловой базы выглядит так:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Администратор" /P"123" /DisableStartupDialogs /DumpIB"E:\Backup\buh.dt" /Out"E:\Backup\dump.log"
/RestoreIB полностью заменяет данные базы содержимым файла .dt. Запускайте его только на той базе, которую действительно хотите перезаписать.
Что учесть до запуска
- 👥 Выгрузке в .dt, загрузке .dt, обновлению структуры базы данных и тестированию нужен монопольный доступ. Если в базе остался хоть один пользователь, операция не выполнится.
- 🖥️ В клиент-серверном варианте заранее установите блокировку начала сеансов с кодом разрешения (в консоли кластера или в самой конфигурации), а пакетный запуск дополните ключом
/UC"код". - 📦 Для серверной базы вместо
/Fиспользуйте/S"srv01\buh". Выгрузка .dt большой серверной базы идёт долго: планируйте её на нерабочее время. - 💾 Перед
/UpdateCfgи/LoadCfgсделайте выгрузку .dt той же командой выше. Откатить обновление конфигурации без копии нельзя.
💡 Для серверных баз регламентное резервное копирование надёжнее делать средствами СУБД (PostgreSQL, MS SQL). Выгрузка .dt — это перенос и страховка, а не замена бэкапа СУБД.
Утилита ibcmd
Начиная с 8.3.14 в bin есть ibcmd.exe. Она работает с базой без запуска Конфигуратора: выгрузка и загрузка .dt, создание базы, работа с конфигурацией. Набор команд и их синтаксис зависят от версии платформы, поэтому смотрите справку в консоли: ibcmd help и ibcmd help infobase.
Журналы и диагностика консольного запуска
Пакетный запуск молчит. Чтобы понять, что произошло, нужны два ключа.
- 📝
/Out"путь\файл.log"— 1С пишет в файл служебные сообщения: ход операции и текст ошибки. Добавьте-NoTruncate, чтобы файл не перезаписывался, а дополнялся:/Out"E:\Logs\1c.log" -NoTruncate. - ✅
/DumpResult"путь\result.txt"— 1С запишет в файл код результата.0— успех, любое другое число — ошибка.
Код возврата процесса тоже доступен в bat-файле через %ERRORLEVEL%, но только если вы дождались завершения 1С. Для этого запускайте её через start "" /wait.
Чем отличаются источники диагностики:
| Источник | Что в нём | Когда смотреть |
|---|---|---|
Файл /Out | сообщения конкретного пакетного запуска | операция не выполнилась, причина неясна |
Файл /DumpResult | одна цифра: успех или нет | проверка в скрипте |
| Журнал регистрации базы | события входа, ошибки, изменения данных | что делала обработка, запущенная через /Execute |
| Технологический журнал | подробный лог платформы, настраивается файлом logcfg.xml | падения и зависания, которые не видны в /Out |
Технологический журнал включают файлом logcfg.xml в каталоге conf платформы (например, C:\Program Files\1cv8\conf\). Он быстро растёт, поэтому включайте его на время разбора и ограничивайте фильтрами по событиям.
Как собрать bat-файл для запуска одной кнопкой
Bat-файл избавляет от длинных строк в консоли и подходит для Планировщика. Пример ночной выгрузки с датой в имени файла и проверкой результата:
@echo off
chcp 65001 > nul
set V8="C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe"
set BASE=D:\Bases\Buh
set BACKUP=E:\Backup
set STAMP=%date:~6,4%-%date:~3,2%-%date:~0,2%
start "" /wait %V8% DESIGNER /F"%BASE%" /N"Администратор" /P"123" /DisableStartupDialogs ^
/DumpIB"%BACKUP%\buh_%STAMP%.dt" ^
/Out"%BACKUP%\dump.log" -NoTruncate ^
/DumpResult"%BACKUP%\result.txt"
set /p RES=<"%BACKUP%\result.txt"
if "%RES%"=="0" (echo Выгрузка прошла успешно) else (echo Ошибка выгрузки, смотрите dump.log)
Что здесь важно:
chcp 65001переключает консоль на UTF-8. Сохраните сам файл тоже в UTF-8, иначе кириллические имена пользователей превратятся в набор символов и вход не пройдёт.start "" /waitждёт, пока 1С закончит. Пустые кавычки послеstart— заголовок окна, без нихstartпримет путь к 1С за заголовок.- Переменная
STAMPберёт дату из%date%. Разбор подходит для форматаДД.ММ.ГГГГ. В другой локали Windows позиции символов будут иные: проверьте командойecho %date%. - Символ
^переносит длинную команду на следующую строку.
Чтобы открыть конкретную базу ярлыком на рабочем столе, хватит одной строки. Создайте ярлык и в поле «Объект» укажите путь к 1cv8.exe с ключами ENTERPRISE /F"...". Пароль в ярлыке не храните.
Пароль в bat-файле лежит открытым текстом. Заведите для автоматизации отдельного пользователя 1С с минимально нужными правами, а сам файл держите в папке, доступной только администраторам.
После обновления платформы номер версии в пути меняется, а старая папка может быть удалена. Держите путь в одной переменной V8 в начале файла, чтобы править одну строку.
Регламентные операции через Планировщик заданий Windows
Готовый bat-файл ставят в расписание стандартным Планировщиком. Через интерфейс: Пуск → Планировщик заданий → Создать задачу. Или одной командой в консоли, запущенной от имени администратора:
schtasks /create /tn "1C_Buh_DumpIB" /tr "C:\Scripts\dump_buh.bat" /sc daily /st 02:00 /ru "DOMAIN\svc_1c" /rp "ПарольУчётки"
Задача будет запускаться каждый день в 02:00 от имени служебной учётной записи Windows.
Проверьте до первого ночного запуска:
- 🔐 Учётная запись задачи имеет права на чтение папки базы и запись в папку бэкапов. Если бэкап идёт на сетевую папку, указывайте путь вида
\\nas\backup, а не подключённую букву диска: у задачи в фоне буквы сетевых дисков нет. - 👤 Задача настроена «Выполнять вне зависимости от регистрации пользователя». Иначе она не стартует, пока никто не вошёл в Windows.
- 🔑 На компьютере доступна лицензия 1С для этого запуска. Пакетный Конфигуратор занимает лицензию так же, как обычный сеанс.
- 🧪 Задача хотя бы раз выполнена вручную: правой кнопкой по задаче →
Выполнить, затем проверкаresult.txtи.log.
Старые выгрузки удаляйте тем же скриптом, иначе диск заполнится. Например, строка в конце bat-файла оставит файлы .dt за последние 14 дней:
forfiles /p "E:\Backup" /m *.dt /d -14 /c "cmd /c del @path"
Почему 1С не запускается из командной строки: ошибки и решения
Если ничего не помогло, запустите ту же строку вручную в консоли от имени той же учётной записи, под которой работает задача: runas /user:DOMAIN\svc_1c cmd. Так вы увидите ошибку своими глазами, а не в пустом логе.
Частые вопросы о командной строке 1С
Можно ли открыть командную строку Windows прямо из 1С?
ЗапуститьПриложение, но это делается в Конфигураторе, а не пользователем.Как узнать, какие ключи поддерживает моя версия платформы?
Чем 1cv8.exe отличается от 1cestart.exe при запуске из консоли?
1cv8.exe — конкретная версия платформы, её используют в скриптах и пакетном режиме. 1cestart.exe — стартер, который показывает список баз и сам выбирает версию; для автоматизации он неудобен.Где задать ключи, чтобы они срабатывали у пользователя при каждом входе?
Изменить и на последнем шаге заполните поле Дополнительные параметры запуска. Настройка хранится в списке баз этого пользователя Windows.Можно ли запустить пакетный режим для серверной базы с другого компьютера?
/S"имя_сервера\имя_базы".