conemu pass env var в bash-терминал WSL - PullRequest
0 голосов
/ 17 октября 2018

Я пытаюсь получить заданную в ConEmu задачу для запуска нескольких экземпляров Ubuntu bash с использованием уровня WSL Windows 10.

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

Вот команда задачи, которую я использую:

установить "STARTUP_CMD = 'gfp && make server'" & установить "PATH =% ConEmuBaseDirShort% \ wsl;% PATH%" &% ConEmuBaseDirShort% \ conemu-cyg-64.exe --wsl -cur_console: p-cur_console: d: C: \ xxx \ yyy

На стороне Linux в моем файле ~ / .bash_aliases есть код, который ищет STARTUP_CMD env var и пытается выполнить его.Я нашел код, который может извлекать env-переменные со стороны Windows, где команды set, по-видимому, хранят вещи.Проблема в том, что Windows не знает, что с ними делать, и пытается расширить их, когда они читаются, поэтому все взрывается.

У меня было это раньше, но мне пришлось стереть и восстановить моймашина недавно, и, к сожалению, нигде не было резервной копии рабочей команды.

Я думал, что это рекомендуемый способ запуска bash с WSL, но я бы предпочел способ отправить материал напрямую на уровень Linuxкак env vars (или если у кого-то есть лучший способ ставить в очередь разные команды для каждой панели, я тоже за это).Любая помощь приветствуется.

Спасибо!

1 Ответ

0 голосов
/ 17 октября 2018

О, конечно, я нахожу ответ сразу после публикации вопроса ... здесь, чтобы помочь другим людям, которые столкнулись с той же проблемой (или моей будущей личности, если я забуду и мне придется снова вытереть мой аппарат).set "PATH =% ConEmuBaseDirShort% \ wsl;% PATH%" &% ConEmuBaseDirShort% \ conemu-cyg-64.exe --wsl -eSTARTUP_CMD = "gfp && make server" -cur_console: p -cur_console: d: C: \ xxx \ yyy

Вам просто нужно поставить префикс env var, который вы хотите, с -e и передать его в качестве параметра conemu-cyg.Он проходит без каких-либо изменений на стороне Windows, и вы можете прочитать его, как и любой другой env var на стороне Linux.

...