Мне часто нужно подключаться к различным серверам, используя SSH. Я использую встроенный SSH-клиент из Cmder, вот так:
cmd /c "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe root@server1" -new_console:C:"C:\Apps\cmder-git\icons\cmder.ico" -new_console:P:^<Ubuntu^> -new_console:t:server1
Но я ленив, поэтому я хочу написать пакетный скрипт, который будет принимать только один аргумент для подключения к любой конечной точке SSH (например, conssh root@server1
) и будет вызываться для создания новых вкладок ConEmu из диалогового окна « Новая консоль » ( создание столько задач ConEmu, сколько сервер - не вариант).
conssh.bat (в пределах% PATH%):
@echo off
:: Aliases
if "%1"=="s1" (
set arg="root@server1"
) else if "%1"=="c1" (
set arg="-t root@server1 ssh root@container1.lxc"
) else (
set arg=%1
)
:: cmd /c "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%" -new_console:C:C:\Apps\cmder-git\icons\cmder.ico -new_console:P:^<Ubuntu^> -new_console:t:"%1"
:: => Fail (works, but opens a useless tab : "ConEmuC: Root process was alive less than 10 sec, ExitCode=121.")
:: cmd /c "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%" -cur_console:C:C:\Apps\cmder-git\icons\cmder.ico -cur_console:P:^<Ubuntu^> -cur_console:t:"%1"
:: => Fail (ConEmuC: Root process was alive less than 10 sec, ExitCode=1.)
:: "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%" -new_console:C:C:\Apps\cmder-git\icons\cmder.ico -new_console:P:^<Ubuntu^> -new_console:t:"%1"
:: => Fail (ConEmuC: Root process was alive less than 10 sec, ExitCode=1.)
:: cmd /k "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%" -new_console:C:C:\Apps\cmder-git\icons\cmder.ico -new_console:P:^<Ubuntu^> -new_console:t:"%1"
:: => Fail (works, but opens a useless tab : "ConEmuC: Root process was alive less than 10 sec, ExitCode=121.")
:: cmd /k "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%" -cur_console:C:C:\Apps\cmder-git\icons\cmder.ico -cur_console:P:^<Ubuntu^> -cur_console:t:"%1"
:: => Fail (opens a cmd.exe shell, not ssh)
:: cmd /c -new_console:C:C:\Apps\cmder-git\icons\cmder.ico -new_console:P:^<Ubuntu^> -new_console:t:"%1"
:: cmd /c "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%"
:: => Fail (opens a useless tab, with wrong icon)
:: start /b "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%" -new_console:C:C:\Apps\cmder-git\icons\cmder.ico -new_console:P:^<Ubuntu^> -new_console:t:"%1"
:: => Fail
:: start /b "%ConEmuDir%\..\git-for-windows\usr\bin\ssh.exe %arg%" -cur_console:C:C:\Apps\cmder-git\icons\cmder.ico -cur_console:P:^<Ubuntu^> -cur_console:t:"%1"
:: => Fail
Как я могу заставить его работать (открыть только одну вкладку, с нужным значком, палитрой и заголовком)?
Спасибо