Как открыть несколько файлов одновременно с Geany в пакетном скрипте? - PullRequest
0 голосов
/ 26 июня 2019

У меня странная проблема, когда я пытаюсь открыть несколько файлов в geany с помощью пакетного скрипта.

Сценарий просто идет по папкам, которые я ему дал в виде списка, и в каждой папке он открывает Makefile здесь с geany. Это работает; однако сначала откроется первый Makefile, а затем подождите, пока я закрою окно, чтобы открыть второй, и так далее. Он откроет следующий Makefile на другой вкладке, так что в конце у меня все мои макрофайлы будут открыты, но мне нужно закрыть окно между ними, и у меня есть много чего открыть (вот почему я сделал скрипт -_- )

Кто-нибудь знает, как исправить это странное поведение?

Я сделал это в Linux с geany: он работает хорошо. Я сделал это в Windows с помощью блокнота: он работает хорошо. Но окна с Geany не работают так, как я хочу.

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

Вот мой сценарий, немного упрощенный:

rem set prog="C:\Program Files\Notepad++\notepad++.exe 
set prog="C:\Program Files\Geany\bin\geany.exe
set FOLDERLIST="Some Folders Names Separate ByASpace"

for /d %%C in (%FOLDERLIST%) do (
    cd %%~C 
    %prog% Makefile
    cd ..
)

Так что я хочу, чтобы он открывал все файлы одновременно, без необходимости закрывать окно между ними. Как вы можете видеть, у меня есть строка rem с блокнотом в качестве проги, и эта работает как положено; Джени нет. Но опять же, я сделал это в Linux с помощью geany, и он открывает все файлы одновременно.

1 Ответ

0 голосов
/ 26 июня 2019

Я нашел рабочий ответ на этот вопрос: SuperUser: Выполнить командную строку в фоновом режиме

Итак, я обнаружил, что когда Geany открыт и я запускаю свой пакетный скриптработает отлично.Затем я попытался открыть geany в пакетном скрипте перед открытием всех файлов, но это не сработало.Затем, с некоторыми советами, я попытался открыть его, как Деймон.И вот как помог ранее цитированный ответ.

Вот результат:

rem set prog="C:\Program Files\Notepad++\notepad++.exe 
set prog="C:\Program Files\Geany\bin\geany.exe
set FOLDERLIST="Some Folders Names Separate ByASpace"

for /d %%C in (%FOLDERLIST%) do (
    cd %%~C 
    start "" %prog% Makefile
    cd ..
)

Кажется, что start "" запускает файл в фоновом режиме и поэтому позволяет сценарию продолжаться и открывать другие файлы.

PS: Обратите внимание, что start /B без "", также приведенного в качестве ответа, не работает для меня, так как он спрашивает меня, с какой программой я хочу открыть файлы.

...