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-Key: 342120

Url: https://administrator.de/contentid/342120

Printed on: April 19, 2024 at 08:04 o'clock

Member: Lochkartenstanzer
Lochkartenstanzer Jun 30, 2017 at 07:48:46 (UTC)
Goto Top
moin,

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

lks
Mitglied: 132934
132934 Jun 30, 2017 at 07:52:57 (UTC)
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
Member: freeker
freeker Jun 30, 2017 at 08:36:56 (UTC)
Goto Top
Moin,

Es gibt auch die Möglichkeit ein Shell-Script per PHP zu starten mit
shell_exec('dein_script');  
Member: beidermachtvongreyscull
beidermachtvongreyscull Jun 30, 2017 at 10:14:46 (UTC)
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.
Member: Lochkartenstanzer
Lochkartenstanzer Jun 30, 2017 updated at 10:17:49 (UTC)
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
Member: beidermachtvongreyscull
beidermachtvongreyscull Jun 30, 2017 updated at 10:48:56 (UTC)
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.
Member: Lochkartenstanzer
Lochkartenstanzer Jun 30, 2017 at 11:04:03 (UTC)
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
Member: beidermachtvongreyscull
beidermachtvongreyscull Jun 30, 2017 at 11:07:46 (UTC)
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.
Member: sebasscha
sebasscha Jul 02, 2017 at 11:50:20 (UTC)
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.
Member: Lochkartenstanzer
Lochkartenstanzer Jul 02, 2017 at 12:11:17 (UTC)
Goto Top
Wie gesagt:

cygwin, ggf halt nur die ssh ohne den Rest.

lks
Member: Sheogorath
Solution Sheogorath Jul 02, 2017 at 14:30:40 (UTC)
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
Member: sebasscha
sebasscha Jul 03, 2017 at 06:31:29 (UTC)
Goto Top
super, das ist genau das was ich wollte!

Manchmal ist es so einfach… face-smile