CLI do Desktop
A versão Desktop do DR-Terminal fornece uma interface de linha de comandos. Útil para integrações com IDE, scripts e automação.
Uso
DR-Terminal connect <target> [flags]
- target — primeiro resolvido como nome de conexão guardada (insensível a maiúsculas), depois interpretado como
host[:port].
Flags
| Flag | Descrição |
|---|---|
-u, --user | Nome de utilizador (para targets host:port). |
-p, --password | Senha na linha de comandos (inseguro — pode ficar no histórico da shell). |
--password-stdin | Ler senha de stdin (seguro: pass show server | DR-Terminal ...). |
-i, --identity | Ficheiro de chave privada (PEM). |
-j, --jump | Cadeia de jump hosts por nome, por ex. bastion1,bastion2. |
-c, --command | Excerto shell: injectado após login (padrão) ou executado sem interface com --exec. |
--new-tab | Força a abertura de novo separador na instância em execução. |
--exec | Sem interface: executa o comando, transmite stdout/stderr, termina com o código de saída remoto. |
-h, --help | Esta ajuda. |
Exemplos
# Abrir novo separador na instância em execução e iniciar sessão no "lager" guardado
DR-Terminal connect lager --new-tab
# Host ad-hoc com utilizador e chave
DR-Terminal connect 10.0.0.1:22 -u pi -i ~/.ssh/id_ed25519 --new-tab
# Cadeia de jumps: bastion1 → bastion2 → destino
DR-Terminal connect production -j bastion1,bastion2 --new-tab
# Exec sem interface — imprime uptime e termina
DR-Terminal connect lager --exec -c 'uptime'
# Script de arranque via CLI: executar comandos após login
DR-Terminal connect dev --new-tab -c 'cd /srv/app && tmux attach -t main'
Symlink no PATH
Após instalação (ou após ./gradlew :composeApp:createDistributable) crie um symlink para o comando ficar disponível globalmente:
sudo ln -s /path/to/DR-Terminal/bin/DR-Terminal /usr/local/bin/dr-terminal
dr-terminal connect lager --exec -c 'df -h'
Instância única
O DR-Terminal mantém uma instância por utilizador (socket de domínio Unix ou named pipe em Windows). Um segundo DR-Terminal connect ... encaminha os seus argumentos para a instância em execução e termina — a instância em execução abre então um novo separador.