Wraz z pojawieniem się powłoki Bash systemu Windows 10 można teraz tworzyć i uruchamiać skrypty powłoki Bash w systemie Windows 10. Można również włączyć polecenia Bash do pliku wsadowego Windows lub skryptu PowerShell.
Nawet jeśli wiesz, co robisz, niekoniecznie jest to tak proste, jak się wydaje. Systemy Windows i UNIX używają różnych znaków końca linii, a system plików Windows jest dostępny w innej lokalizacji w środowisku Bash.
Podczas pisania skryptów powłoki w systemie Windows pamiętaj, że systemy Windows i UNIX, takie jak Linux, używają różnych znaków końca linii w plikach tekstowych w skryptach powłoki.
Innymi słowy oznacza to, że nie można po prostu napisać skryptu powłoki w Notatniku. Zapisz plik w Notatniku i nie będzie on poprawnie interpretowany przez Bash. Możesz jednak użyć bardziej zaawansowanych edytorów tekstu - na przykład Notepad ++ pozwala nadać plikowi UNIX znaki końca linii, klikając Edycja> Konwersja EOL> Format UNIX / OSX.
Jednak lepiej jest pisać skrypt powłoki w samym środowisku Bash. Środowisko Bash oparte na Ubuntu zawiera zarówno edytory vi, jak i nano. Edytor vi jest potężniejszy, ale jeśli nigdy wcześniej go nie używałeś, możesz zacząć od nano. Jest łatwiejszy w użyciu, jeśli jesteś nowy.
Na przykład, aby utworzyć skrypt bash w nano, uruchomisz następujące polecenie w bash:
nano ~ / myscript.sh
Otworzyłoby to edytor tekstu Nano wskazujący na plik o nazwie "myscript.sh" w katalogu domowym twojego konta użytkownika. (Znak "~" reprezentuje twój katalog domowy, więc pełna ścieżka to /home/username/myscript.sh.)
Uruchom skrypt powłoki za pomocą linii:
#! / bin / bash
Wprowadź polecenia, które chcesz uruchomić, każdy w osobnym wierszu. Skrypt uruchamia kolejno każde polecenie. Dodaj znak "#" przed wierszem, aby traktować go jako "komentarz", coś, co pomaga tobie i innym ludziom zrozumieć skrypt, ale który nie jest uruchamiany jako polecenie. Bardziej zaawansowane sztuczki można znaleźć w bardziej szczegółowym przewodniku po skryptach Bash w systemie Linux. Te same techniki będą działać w Bash na Ubuntu w systemie Windows.
Zauważ, że nie ma możliwości uruchomienia programów Windows z poziomu środowiska Bash. Jesteś ograniczony do poleceń i narzędzi terminalu Linux, tak jak w typowym systemie Linux.
Na przykład, użyjmy po prostu podstawowego skryptu "cześć świat" jako przykładu tutaj:
#! / bin / bash # ustaw zmienną STRING STRING = "Hello World!" # wydrukuj zawartość zmiennej na ekranie echo $ STRING
Jeśli używasz edytora tekstowego Nano, możesz zapisać plik, naciskając Ctrl + O, a następnie Enter. Zamknij edytor, naciskając Ctrl + X.
Prawdopodobnie będziesz chciał, aby skrypt był wykonywalny, abyś mógł łatwiej go uruchamiać. W systemie Linux oznacza to, że musisz nadać plikowi skryptowemu uprawnienia do wykonywania. Aby to zrobić, uruchom następujące polecenie w terminalu, wskazując go w swoim skrypcie:
chmod + x ~ / myscript.sh
Aby uruchomić skrypt, możesz teraz uruchomić go w terminalu, wpisując jego ścieżkę. Za każdym razem, gdy chcesz uruchomić skrypt w przyszłości, po prostu otwórz powłokę Bash i wpisz ścieżkę do skryptu.
~ / myscript.sh
(Jeśli skrypt znajduje się w bieżącym katalogu, możesz go uruchomić za pomocą ./myscript.sh)
Aby uzyskać dostęp do plików systemu Windows w skrypcie, musisz podać ich ścieżkę w katalogu / mnt / c, a nie ścieżce systemu Windows. Na przykład, jeśli chcesz określić plik C: \ Users \ Bob \ Downloads \ test.txt, musisz podać ścieżkę /mnt/c/Users/Bob/Downloads/test.txt. Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem, aby zlokalizować lokalizacje w powłoce Bash systemu Windows 10.
Wreszcie, jeśli masz istniejący plik wsadowy lub skrypt PowerShell, do którego chcesz wprowadzić polecenia, możesz uruchamiać polecenia Bash bezpośrednio, korzystając z bash -c
dowództwo.
Na przykład, aby uruchomić polecenie systemu Linux w oknie wiersza polecenia lub w oknie PowerShell, można uruchomić następujące polecenie:
bash -c "polecenie"
Ta sztuczka pozwala dodawać polecenia Bash do plików wsadowych lub skryptów PowerShell. Okno powłoki Bash pojawi się, gdy uruchomione zostanie polecenie Bash.
Aktualizacja: Jeśli masz wiele środowisk Linux zainstalowanych, możesz użyć polecenia wslconfig, aby wybrać domyślne środowisko Linux używane podczas uruchamiania bash -c
dowództwo.
Aby utworzyć skrót do skryptu Bash z poziomu systemu Windows, po prostu utwórz skrót tak jak zwykle. Aby uzyskać cel skrótu, użyj znaku bash -c
polecenie nakreśliliśmy powyżej i wskażemy go w utworzonym skrypcie Bash.
Na przykład wskażesz skrót w " bash -c "~ / myscript.sh"
"Aby uruchomić przykładowy skrypt powyżej. Możesz także uruchomić to polecenie z okna wiersza poleceń lub okna PowerShell.