sebasscha
Goto Top

Bash Datei per SSH in Windows starten

Hi,

ich bin gerade auf der Suche nach einer Möglichkeit mein Bashscript auf einem Ubuntu Server in Windows mit einem Klick zu starten.

Meine Traumvorstellung ist:

1. Icon auf Windows das mit einem Klick eine Terminalsitzung startet
2. Meine Batch Datei wird ausgeführt, gibt Werte zurück und eingaben müssen möglich sein.

Habe bereits mit plink experimentiert. Allerdings bekomme ich hier keine Ausgaben und ich kann keine eingaben mehr tätigen.

Optimal wäre es wie eine Putty Sitzung nur ohne Eingaben von Zugangsdaten und Pfade.

Gibt es hier Möglichkeiten?

Content-ID: 342120

Url: https://administrator.de/forum/bash-datei-per-ssh-in-windows-starten-342120.html

Ausgedruckt am: 22.12.2024 um 23:12 Uhr

Lochkartenstanzer
Lochkartenstanzer 30.06.2017 um 09:48:46 Uhr
Goto Top
moin,

mach Dir cygwin auf Dein windows drauf und mach eine bat/cmd in der ssh mit passenden Parametern aufgerufen wird.

lks
132934
132934 30.06.2017 um 09:52:57 Uhr
Goto Top
Statt vollständig Cygwin zu nutzen kannst du auch nur die SSH Tools aus Cygwin nutzen. Es gibt einen OpenSSH Port für Windows:

https://github.com/PowerShell/Win32-OpenSSH
Artikel dazu: https://www.golem.de/news/openssh-erster-code-von-ssh-fuer-windows-frei- ...

Gruß

Airine
freeker
freeker 30.06.2017 um 10:36:56 Uhr
Goto Top
Moin,

Es gibt auch die Möglichkeit ein Shell-Script per PHP zu starten mit
shell_exec('dein_script');  
beidermachtvongreyscull
beidermachtvongreyscull 30.06.2017 um 12:14:46 Uhr
Goto Top
Da sehe ich Möglichkeiten.
Das benötigte Tool ist ein Schwesterprodukt zu Putty und heißt Plink.

Damit kannst Du remote von einer Windowsmaschine aus Bash-Scripts auf einer Linux-maschine antriggern.
Lochkartenstanzer
Lochkartenstanzer 30.06.2017 aktualisiert um 12:17:49 Uhr
Goto Top
Zitat von @beidermachtvongreyscull:

Da sehe ich Möglichkeiten.
Das benötigte Tool ist ein Schwesterprodukt zu Putty und heißt Plink.

Damit kannst Du remote von einer Windowsmaschine aus Bash-Scripts auf einer Linux-maschine antriggern.


Hast Du überlesen, daß der TO sagte:

Habe bereits mit plink experimentiert. Allerdings bekomme ich hier keine Ausgaben und ich kann keine eingaben mehr tätigen.

?

lks
beidermachtvongreyscull
beidermachtvongreyscull 30.06.2017 aktualisiert um 12:48:56 Uhr
Goto Top
Ja. Das habe ich. Danke für den Hinweis @lks.

Aber:

Er kann auch Eingaben an das Script per Command-Line übergeben. Habe ich selbst schon gemacht.

Und was Ausgaben angeht:
Warum nicht in eine Datei umleiten und mit PSCP auf die Windows-Büchse rüberholen und dort auswerten?

Ich sehe sein Problem nicht.
Lochkartenstanzer
Lochkartenstanzer 30.06.2017 um 13:04:03 Uhr
Goto Top
Zitat von @beidermachtvongreyscull:

Er kann auch Eingaben an das Script per Command-Line übergeben. Habe ich selbst schon gemacht.

Ich tippe mal, daß der TO irgendetwas interaktives machen will.

lks
beidermachtvongreyscull
beidermachtvongreyscull 30.06.2017 um 13:07:46 Uhr
Goto Top
Zitat von @Lochkartenstanzer:

Ich tippe mal, daß der TO irgendetwas interaktives machen will.

lks

Dann warte ich mal ab, ob der TO sein Problem etwas detaillierter darstellen wird.
Ich blicke nicht durch.

Schönen Freitag wünsche ich Dir.
sebasscha
sebasscha 02.07.2017 um 13:50:20 Uhr
Goto Top
sorry für die späte Antwort face-smile

genau ich habe ein interaktives Script.

Z.B.:

#Script wird gestartet
Terminal: Welches Programm soll gestartet werden? Eingabe: 1 = Programm 1, 2 = Programm 2
Benutzer: 2 „Enter“
Terminal: Programm 2 wird gestartet
Terminal: Nächste Abfrage

und so weiter face-smile

Wichtig ist, dass zu jeder Zeit im Script etwas ausgegeben und eingegeben werden kann.
Lochkartenstanzer
Lochkartenstanzer 02.07.2017 um 14:11:17 Uhr
Goto Top
Wie gesagt:

cygwin, ggf halt nur die ssh ohne den Rest.

lks
Sheogorath
Lösung Sheogorath 02.07.2017 um 16:30:40 Uhr
Goto Top
Moin,

das ist doch überhaupt kein Problem:

putty agent (pagent.exe) starten

In Putty ein profil anlegen (also welcher Key verwendet werden soll, remoteip, ggf. port, ... )

Dann in Putty unter Connection -> SSH gehen und unter "Remote Command" deinen entsprechenden Script aufruf hinterlegen

In deiner batch, rufst du dann einfach die putty.exe mit dem Profilnamen als Parameter auf.

That's it.

Gruß
Chris
sebasscha
sebasscha 03.07.2017 um 08:31:29 Uhr
Goto Top
super, das ist genau das was ich wollte!

Manchmal ist es so einfach… face-smile