CLI na komputerze
Wersja komputerowa DR-Terminal zawiera interfejs wiersza poleceń. Przydatny do integracji z IDE, skryptowania i automatyzacji.
Użycie
DR-Terminal connect <target> [flags]
- target — rozpoznawany najpierw jako nazwa zapisanego połączenia (bez rozróżniania wielkości liter), następnie dopasowywany do zapisanych połączeń po
host[:port](zawężony przez-u, jeśli podano), a na końcu parsowany jakohost[:port]dla sesji doraźnej. Dopasowanie do zapisanego połączenia korzysta z jego motywu, grupy i zapisanych poświadczeń.
Flagi
| Flaga | Opis |
|---|---|
-u, --user | Nazwa użytkownika (dla celów host:port). |
-p, --password | Hasło w wierszu poleceń (niebezpieczne — może trafić do historii powłoki). |
--password-stdin | Odczyt hasła ze standardowego wejścia (bezpieczne: pass show server | DR-Terminal ...). Tylko z --exec. |
-i, --identity | Plik klucza prywatnego (PEM). Tylko z --exec. |
-j, --jump | Łańcuch hostów pośredniczących po nazwie, np. bastion1,bastion2. |
-c, --command | Fragment powłoki: wstrzyknięty po logowaniu (domyślnie) lub wykonany bez interfejsu z flagą --exec. |
--new-tab | Wymusza otwarcie nowej karty w działającej instancji. |
--exec | Bez interfejsu: uruchom polecenie, strumieniuj stdout/stderr, zakończ z kodem wyjścia zdalnego procesu. |
-h, --help | Pokaż tę pomoc. |
-i oraz --password-stdin dotyczą wyłącznie uruchomień bez interfejsu z --exec. Przy otwieraniu karty w GUI uwierzytelnianie korzysta z poświadczeń zapisanego połączenia lub ze zwykłych monitów w aplikacji.
Przykłady
# Open a new tab in the running instance and log into saved "lager"
DR-Terminal connect lager --new-tab
# Ad-hoc host with user — the app prompts for credentials
DR-Terminal connect 10.0.0.1:22 -u pi --new-tab
# Jump chain: bastion1 → bastion2 → target
DR-Terminal connect production -j bastion1,bastion2 --new-tab
# Headless exec with a key file — prints uptime and exits
DR-Terminal connect 10.0.0.1:22 -u pi -i ~/.ssh/id_ed25519 --exec -c 'uptime'
# CLI start script: run commands after login
DR-Terminal connect dev --new-tab -c 'cd /srv/app && tmux attach -t main'
Terminal lokalny z CLI
DR-Terminal local [flagi]
Otwiera nową kartę terminala lokalnego w GUI (uruchamiając aplikację, jeśli nie działa) i opcjonalnie wpisuje polecenie do gotowej powłoki. Po zakończeniu polecenia powłoka pozostaje interaktywna — karta jest zwykłą sesją lokalną.
| Flaga | Opis |
|---|---|
-t, --type | Powłoka do otwarcia: system, cmd, powershell, pwsh, wsl lub wsl:<dystrybucja>. Pominięta: powłoka lokalna skonfigurowana w Ustawieniach — ta sama, którą otwiera przycisk terminala lokalnego. Wybór dotyczy tylko tej karty. |
-c, --command | Wpisywane do powłoki nowej karty, gdy tylko będzie gotowa — nigdy do sesji, która akurat była aktywna. |
--cwd | Katalog roboczy powłoki. Pominięty: katalog, z którego wywołano CLI, więc ścieżki względne w --command wskazują te same pliki niezależnie od tego, czy aplikacja już działała. |
cmd, powershell, pwsh i wsl to powłoki Windows; na innych systemach użyj --type system albo skonfiguruj powłokę w Ustawieniach.
# Default local shell, run a script from the current directory
DR-Terminal local --command "python3 aaaa.py"
# Windows: force CMD and a working directory with spaces
DR-Terminal.exe local --type cmd --cwd "C:\projekty\demo" --command "python3 aaaa.py"
# Just open a WSL tab in a picked distribution
DR-Terminal local --type wsl:Ubuntu-24.04
Dowiązanie symboliczne w PATH
Po zainstalowaniu DR-Terminal utwórz dowiązanie symboliczne, aby polecenie działało globalnie:
sudo ln -s /path/to/DR-Terminal/bin/DR-Terminal /usr/local/bin/dr-terminal
dr-terminal connect lager --exec -c 'df -h'
Pojedyncza instancja
DR-Terminal utrzymuje jedną instancję na użytkownika (gniazdo domeny Unix lub nazwany potok w systemie Windows). Drugie DR-Terminal connect ... lub DR-Terminal local ... przekazuje swoje argumenty do działającej instancji i kończy działanie — działająca instancja otwiera wtedy nową kartę.