Jak napisać skrypt wsadowy w systemie Windows
Czy wiesz, jak korzystać z wiersza polecenia? Jeśli tak, możesz napisać plik wsadowy. W najprostszej postaci plik wsadowy (lub skrypt wsadowy) to lista kilku poleceń wykonywanych po dwukrotnym kliknięciu pliku. Pliki wsadowe powracają do systemu DOS, ale nadal działają w nowoczesnych wersjach systemu Windows.
Skrypty PowerShell i skrypty Bash mogą być bardziej wydajne, ale pliki wsadowe mogą być nadal przydatne, jeśli trzeba uruchomić podstawowe polecenia systemu Windows.
Podstawowe informacje o plikach wsadowych
Plik wsadowy jest po prostu plikiem tekstowym zapisanym z rozszerzeniem .bat. Możesz napisać go za pomocą Notatnika lub bardziej zaawansowanego edytora tekstów, takiego jak Notepad ++, ale nie używaj procesora tekstu takiego jak Microsoft Word.
Stwórzmy prosty plik wsadowy. Najpierw otwórz Notatnik. Wpisz następujące linie:
ECHO OFF ECHO Hello World PAUSE
Następnie zapisz plik, klikając Plik> Zapisz. Nadaj mu dowolną nazwę, ale zastąp domyślne rozszerzenie pliku txt rozszerzeniem .bat.
Na przykład możesz go nazwać hello_world.bat
.
Masz teraz plik wsadowy z rozszerzeniem .bat. Kliknij dwukrotnie, aby go uruchomić. Ten konkretny plik wsadowy wyłącza ECHO (które czyści dane wyjściowe, ukrywając polecenia przed wydrukowaniem przy monicie, drukuje tekst "Hello World" na ekranie, a następnie czeka, aż naciśniesz klawisz, zanim się skończy.
Jeśli nie dodałeś PAUZA
do pliku, plik wsadowy po prostu uruchamia swoje polecenia, a następnie automatycznie zamyka. W takim przypadku wydrukuje okno "Hello World", a następnie natychmiast zamknie okno wiersza polecenia. Jeśli chcesz szybko uruchomić polecenia bez wyświetlania danych wyjściowych, możesz to pominąć. Jeśli używasz kilku poleceń, możesz umieścić PAUZA
rozkaz między nimi.
Pisanie bardziej złożonego pliku wsadowego
Zasadniczo proste jest tworzenie pliku wsadowego. Jedyną rzeczą, którą musisz zmienić, jest to, co wpisujesz w Notatniku. Aby uruchomić kilka poleceń, wpisujesz każdy z nich w osobnym wierszu, a plik wsadowy uruchamia każdy z nich po kolei.
Na przykład, powiedzmy, że chcemy napisać plik wsadowy, który uruchamia kilka poleceń diagnostycznych sieci. Możemy chcieć uciekać ipconfig / all
aby wyświetlić informacje o sieci, ping google.com
aby sprawdzić, czy serwery Google odpowiadają, i tracert google.com
aby uruchomić traceroute na stronę google.com i sprawdzić, czy nie ma żadnych problemów na drodze.
W najbardziej podstawowej formie możemy po prostu umieścić wszystkie te polecenia w pliku wsadowym, jeden po drugim, jak na przykład:
ipconfig / all ping google.com tracert google.com PAUSE
Gdy uruchomimy ten plik, zobaczymy dane wyjściowe każdego polecenia zaraz po drugim. Ale niekoniecznie jest to idealny sposób na zapisanie pliku wsadowego.
Na przykład możesz dodać wiersze komentarza. Każda linia zaczynająca się od a ::
jest linią komentarza i nie zostanie wykonany. To sprawia, że są użytecznym sposobem wyjaśnienia tego, co dzieje się w aktach, dla każdego, komu możesz je podać - lub dla przyszłego siebie, który może zapomnieć, dlaczego umieściłeś tam pewne polecenie.
Możesz również dodać polecenie "ECHO OFF" na początku pliku. Zazwyczaj jest to dodawane do początku większości plików wsadowych. Gdy to zrobisz, same komendy nie będą drukowane w wierszu polecenia, ale wyniki będą. Na przykład zobaczysz szczegóły połączenia sieciowego, ale nie "ipconfig / all". Większość ludzi nie dba o to, aby zobaczyć polecenia, więc może to wyczyścić dane wyjściowe.
Oto, jak to może wyglądać:
:: Ten plik wsadowy sprawdza problemy z połączeniem sieciowym. ECHO OFF :: Zobacz szczegóły połączenia sieciowego ipconfig / all :: Sprawdź, czy Google.com jest osiągalny ping google.com :: Uruchom traceroute, aby sprawdzić trasę do Google.com tracert google.com PAUSE
Istnieją inne instrukcje, które można wykonać w takim pliku wsadowym. Na przykład, możesz chcieć, aby twój skrypt wsadowy uruchomił powyższe polecenia, a następnie zrzuć dane wyjściowe do pliku tekstowego, który możesz wyświetlić później. Aby to zrobić, użyjesz >>
operator po każdym poleceniu, aby dołączyć jego wyjście do pliku tekstowego. Ponieważ i tak będziemy czytać wyniki z pliku tekstowego, możemy pominąć PAUZA
dowództwo.
:: Ten plik wsadowy sprawdza problemy z połączeniem sieciowym :: i zapisuje dane wyjściowe do pliku .txt. ECHO OFF :: Zobacz szczegóły połączenia sieciowego ipconfig / all >> results.txt :: Sprawdź, czy Google.com jest osiągalny ping google.com >> results.txt :: Uruchom traceroute, aby sprawdzić trasę do Google tracert google. com >> wyniki.txt
Po uruchomieniu powyższego skryptu, znajdziesz plik o nazwie results.txt w tym samym folderze co plik wsadowy z wyjściami poleceń. Okno wiersza polecenia zostanie automatycznie zamknięte po uruchomieniu pliku wsadowego.
Przykład, którego używamy powyżej, polega na faktycznym drukowaniu informacji w wierszu polecenia, aby użytkownik mógł je przeczytać. Jednak wiele plików wsadowych zaprojektowano tak, aby były uruchamiane nieinteraktywnie. Na przykład, możesz mieć plik wsadowy, który usuwa wiele plików lub katalogów po dwukrotnym kliknięciu. Po prostu musisz użyć del
polecenie usunięcia plików lub deltree
polecenie do usuwania katalogów. Pamiętaj, że używasz tylko tych samych poleceń, które uruchamiasz w oknie wiersza polecenia.
Zasadniczo jest to kwestia większości plików wsadowych - po prostu uruchamianie kilku poleceń jeden po drugim. Jednak pliki wsadowe mogą być znacznie bardziej skomplikowane. Na przykład możesz użyć instrukcji "JEŻELI" razem z poleceniem "GOTO", aby sprawdzić wartość czegoś, a następnie przejść do różnych linii w zależności od wyniku. To bardziej przypomina pisanie małego programu niż szybki i brudny scenariusz. To jeden z powodów, dla których pliki .bat są czasami nazywane "programami wsadowymi". Jeśli chcesz zrobić coś bardziej złożonego, znajdziesz mnóstwo poradników do robienia określonych rzeczy za pomocą programowania wsadowego online. Ale teraz znasz podstawy, jak zrzucić prosty.