2012-01-02 05:07:33 +0000 2012-01-02 05:07:33 +0000
22
22

Wie kann ich ein Shell-Skript unter Windows ausführen?

Ich bin ein Mac-Benutzer und neu in Windows. Wie kann ich ein Shell-Skript unter Windows ausführen?

Im Allgemeinen würde ich die Textdatei mit der Erweiterung .sh speichern und sie über Terminal ausführen. Aber wie könnte ich das unter Windows tun?

Antworten (8)

30
30
30
2012-01-02 05:18:47 +0000

Bei den Skripten mit dem Suffix .sh handelt es sich im Allgemeinen um Bourne-Shell-Skripte (oder bash, oder ksh, oder zsh – alles von der Bourne-Shell abgeleitete Shells). (Beachten Sie, dass auf Unix-ähnlichen Systemen, einschließlich MacOS, das Suffix .sh nicht notwendig ist; das Betriebssystem schaut auf die #!/bin/sh-Zeile am Anfang des Skripts, um festzustellen, wie es ausgeführt werden soll).

Windows stellt keine Bourne-ähnliche Shell zur Verfügung.

Sie können Cygwin installieren, das eine Unix-ähnliche Umgebung unter Windows bereitstellt – aber es hat keine besonders “native” Umgebung. (Anmerkung der Redaktion: Cygwin ist großartig für Leute wie mich, die Windows benutzen müssen, aber eigentlich lieber Unix benutzen würden)

Es gibt andere Unix-ähnliche Subsysteme, die unter Windows laufen, darunter MinGW und das Paket Windows Services for UNIX , das von Microsoft zur Verfügung gestellt wird.

Oder, anstatt zu versuchen, Unix-ähnliche Shell-Skripte zu schreiben und auszuführen, können Sie Windows-Batch-Dateien schreiben. Diese haben im Allgemeinen das Suffix .bat oder .cmd. Sie verwenden die gleichen Befehle und die gleiche Syntax wie die interaktive Windows-Eingabeaufforderung.

Es gibt auch die relativ neue Windows PowerShell ; ich bin selbst nicht damit vertraut, aber ich habe gute Dinge darüber gehört.

7
7
7
2012-01-02 05:09:41 +0000

Sie können Cygwin verwenden. Es bietet eine linuxähnliche Umgebung in Windows.

2
2
2
2016-09-19 19:31:35 +0000

Es gibt eine weitere Möglichkeit, dies mit dem Jubiläumsupdate für Windows 10 zu tun. Es gibt jetzt eine Bash (Ubuntu)-Shell in Windows.

Um sie nutzen zu können, müssen Sie die Funktion installieren, da sie standardmäßig nicht aktiviert ist.

  1. Gehen Sie zu Control Panel -> Programs -> Turn Windows Features On and Off.

  2. Markieren Sie das Ankreuzfeld für Windows Subsystem for Linux (Beta). Dadurch wird die Funktion und die Eingabeaufforderung für einen Neustart installiert.

Dann können Sie über run -> cmd eine Eingabeaufforderung öffnen und dann bash eingeben oder -> bash.exe ausführen.

Dadurch erhalten Sie eine Bash-Shell ohne virtuelle Maschine oder Cygwin oder Virtualbox.

2
2
2
2012-01-02 05:16:17 +0000

Auf Win sind die gemeinsamen Erweiterungen .bat oder .cmd. Eine gute Quelle für die in der Windows-Shell verwendeten Befehle ist ss64 - für CMD und PowerShell. Cygwin ist kein “Muss”. Es gibt Ihnen nur den Linux-Stil - verwenden Sie BASH unter Win.

2
2
2
2012-01-02 12:14:01 +0000

Was ist mit UWIN?? UWIN ist ein von David Korn entwickeltes Computersoftwarepaket, das es ermöglicht, für das Betriebssystem Unix geschriebene Programme mit wenigen oder gar keinen Änderungen auf Microsoft Windows zu erstellen und auszuführen. Ein Teil der Software-Entwicklung wurde an Wipro, Indien, untervergeben.

Prüfen Sie dies UWIN - Unix für Windows

Wesentliche Merkmale von UWIN

  1. Zugriff auf fast alle Kommandozeilenwerkzeuge von Unix unter Windows. 245 Kommandozeilen-Werkzeuge, um genau zu sein.
  2. Im Lieferumfang enthalten sind der originale Unix-Compiler ‘cc’ sowie eine Fülle von Werkzeugen wie ‘make’ und die notwendigen Bibliotheken, die es ermöglichen, Unix-Anwendungen auf Windows-Maschinen mit sehr wenigen oder keinen Änderungen im Quellcode zu erstellen und auszuführen.
  3. Möglichkeit, andere Compiler wie Visual C++ oder Mingw zum Kompilieren von Programmen zu verwenden. Vollwertiges Perl-Paket
  4. X-Windows-Bibliotheken für diejenigen, die danach streben, X-Anwendungen unter Windows zu entwickeln. Um diese Anwendungen unter Windows ausführen zu können, benötigen Sie allerdings einen X-Server, der nicht im Lieferumfang von UWIN enthalten ist.
  5. UWIN wird mit einem Systemsteuerungs-Applet geliefert (erreichbar über ‘Start->Einstellungen->Systemsteuerung->UWIN’), mit dem einige der UWIN-Systemparameter konfiguriert werden können.

Verwendung von UWIN

  • Unix-Anwendungen nativ in Windows in voller Geschwindigkeit ausführen.
  • Nutzen Sie die volle Leistung der Unix-Befehlszeilenwerkzeuge unter Windows.
  • Die mit UWIN gebündelte Korn-Shell sorgt dafür, dass sich ein Unix-Benutzer in einer Windows-Umgebung wie zu Hause fühlt.
  • Entwickeln und Ausführen von UNIX-Anwendungen unter Windows.
  • Entwickeln von X-Anwendungen auf der Windows-Plattform.

Nachteile von UWIN

  • UWIN wird nicht mit einem X-Server gebündelt geliefert, so dass ein Benutzer keine X-Anwendungen unter Windows ausführen kann. Obwohl es kommerzielle X-Server von Drittanbietern gibt, die diese Lücke füllen können.
  • UWIN steht nicht unter der GPL, kann aber kostenlos heruntergeladen und für pädagogische und nicht-kommerzielle Zwecke genutzt werden.

*Diese Software wurde benutzt, um uns Linux Command beizubringen, als ich im College war… wirklich gut… *


Ref: WikiPedia Cygwin ist eine Unix-ähnliche Umgebung und Befehlszeilenschnittstelle für Microsoft Windows.

Das Gute daran ist, dass Cygwin eine native Integration von Windows-basierten Anwendungen, Daten und anderen Systemressourcen mit Anwendungen, Software-Werkzeugen und Daten der Unix-ähnlichen Umgebung bietet.

  • Interix ** Interix ist eine Komponente der Services for Unix (SFU) Version 3.0 und 3.5 (dieses letzte wird frei verteilt)

Die neuesten Versionen von Interix, 5.2 und 6. 0, sind Komponenten der Editionen Windows Server 2003 R2, Windows Vista Enterprise und Ultimate und Windows Server 2008 unter dem Namen SUA (Subsystem für Unix-basierte Anwendungen) Version 6.1 ist in Windows 7 (Enterprise und Ultimate) und Windows Server 2008 R2 (alle Editionen) enthalten.

1
1
1
2016-08-25 07:59:50 +0000

Obwohl die hier gegebenen Antworten damals korrekt waren, enthält Windows 10 gibt jetzt optional eine modifizierte Version von Ubuntu mit einer vollständigen Bash-Shell .

Einmal installiert, können Sie eine Bash-Eingabeaufforderung öffnen (ähnlich wie bei einem Terminal unter OS X/macOS) und das Skript wie üblich ausführen, d.h.:

chmod +x myscript.sh
./myscript.sh

Wenn Sie ein Skript direkt von Windows aus ausführen wollen, könnten Sie eine Verknüpfung im selben Verzeichnis erstellen und das ‘Ziel’ auf etwas Ähnliches setzen:

C:\Windows\System32\bash.exe -c "./myscript.sh"

Wenn der Pfad Ihres Skripts relativ zum Ort der Verknüpfung ist (wie im obigen Beispiel), stellen Sie sicher, dass das Feld ‘Start in’ ebenfalls leer ist.

0
0
0
2012-01-02 05:09:52 +0000

Sie werden CygWin brauchen, und dann glaube ich, dass Sie einfach laufen können:

sh yourscript.sh
0
0
0
2012-01-02 11:20:04 +0000

Die richtige Antwort wurde in einem Kommentar von Kenaniah gegeben, man muss batch files verwenden. Sie müssen Ihre Shell-Code-Datei *.bat nennen, dann können Sie sie durch Anklicken starten oder einfach ihren Namen in das Terminal eingeben. Beachten Sie, dass das Windows-Terminal nicht genau wie das Unix-Terminal funktioniert. Sie werden überall im Web viel Hilfe und Anleitungen zu den Befehlen und der Syntax finden. Es gibt auch die Möglichkeit, die Windows PowerShell zu verwenden, die eher Unix-ähnlich zu sein scheint.