Как я создаю Windows Batch file, который не показывает Командную строку при выполнении? [дубликат]

Я установил рубиновый драгоценный камень под названием Редкар, который запускается из командной строки. Когда это работает, это крадет оболочку, пока это не завершается, таким образом, я должен создать новое окно оболочки, чтобы продолжить делать работу командной строки. Оболочка, которую я использую, является оболочкой GITBash от MySysGit.

Я нашел файл Redcar.bat, который предназначен для запуска Редкара как ярлыка, я предполагаю, но я не хочу, чтобы дополнительное окно командной строки открылось каждый раз, когда я запускаю файл the Bat.

Как я просто выполняю the Bat, не видя подсказку?

58
задан 12.07.2012, 18:23

3 ответа

Вы не можете - выполнение пакетного файла с созданным в Командной строке собирается сохранить окно открытым до выходов пакетного файла.

То, что можно сделать, предпринимают шаги, чтобы удостовериться, что пакетный файл выходит как можно быстрее. Если вообще возможный, измените пакетный файл для запущения безотносительно программы с start команда. По умолчанию, start возвраты сразу, не ожидая программы для выхода, таким образом, пакетный файл продолжит работать и, по-видимому, выходить сразу. Пара, что с изменением Вашего ярлыка для выполнения пакетного файла, минимизированного, и Вы будете только видеть, что панель задач высвечивается, даже не видя окно на экране.

Один протест к этому состоит в том, что, если Вы запускаете программу консольного режима, которая много интерпретаторов сценария, пакетный файл будет ожидать программы для выхода, и использование start породит новую консоль. Что необходимо сделать, в этом случае выполняется версия на базе Windows интерпретатора вместо основанного на консоли - нет start необходимо. Для Perl Вы работали бы wperl.exe вместо perl.exe. Для Python это pythonw.exe вместо python.exe. Старое распределение win32 Ruby, которое я загрузил, имеет rubyw.exe, который должен сделать то же самое.

Заключительная возможность состоит в том, чтобы использовать сторонний инструмент для выполнения командной строки со скрытым окном. Я услышал о таких вещах, но никогда не имел использование для них, таким образом, я не знаю ни о чем в особенности для указания на Вас на.

38
ответ дан 07.12.2019, 08:20

Дайте этому попытку:

START /B batchfile

отметьте добавленный barlop

запустить/? говорит относительно/B

 B           Start application without creating a new window. The
             application has ^C handling ignored. Unless the application
             enables ^C processing, ^Break is the only way to interrupt
             the application.
4
ответ дан 07.12.2019, 08:20

Я не ясен относительно Вашей проблемы, но с некоторыми моими пакетными файлами, я использую "dumy", кто только цель, должен запустить основной пакетный файл.

Таким образом, GO.BAT будет иметь:

cmd /c go2.bat %1 %2 %3
exit

Выход закрывает окно командной строки, которое иначе осталось бы открытым.

И GO2.BAT будет иметь содержание на самом деле пакетного файла, которого я желаю.

  @echo off
  set userid=

  if NOT [%1]==[] goto userid:
  set /p userid=Enter USERID:  
  goto set_usr:

 :userid
 set userid=%1
 shift

 :set_usr
 if %userid%==steven goto steven:
 ...
3
ответ дан 07.12.2019, 08:20

Теги

Похожие вопросы