Obsługa wiersza poleceń

Obsługa wiersza poleceń

Autor: Paweł Wujczyk

Opublikowano: 11/7/2007, 12:00 AM

Liczba odsłon: 277235

W Wierszu polecenia do komunikowania się z komputerem tak jak w każdym środowisku tekstowym używamy komend, które są zrozumiałe dla komputera. Niestety czasem zdarza się, że my nie rozumiemy tych poleceń. Na szczęście Windows XP został wyposażony w bardzo obszerną pomoc dotyczącą każdego z poleceń. Jeżeli nie wiemy od czego zacząć musimy wpisać w konsoli polecenie help Wiersz polecenia wyświetli nam dostępne polecenia wraz z ich krótką charakterystyką.

Dzięki tej liście możemy odnaleźć polecenie, które wykona dla nas wymagana przez nas działanie. Jeżeli już odnaleźliśmy odpowiednią komendę np. RMDIR. Spróbujmy się teraz dowiedzieć więcej na temat tego polecenia. Aby wyświetlić instrukcje dotyczące komendy wpisujemy to polecenie wraz z przełącznikiem /?. W naszym przypadku będzie to: RMDIR \?.

W Wierszy polecenia programy uruchamiamy wpisując ich nazwę, jeżeli jesteśmy w katalogu, w którym program się znajduję lub ścieżkę i nazwę programu jeżeli aplikacja znajduje się w innej lokalizacji niż aktualnie się znajdujemy. Programy, które zostały zainstalowane wraz z Winows XP możemy uruchamiać nie podawając ścieżki. Na przykład kalkulator możemy uruchomić wpisując po prostu w linii poleceń calc.

Czasami zdarza się że jakieś polecenie po uruchomieniu działa bardzo długo. Z taką sytuacją mamy do czynienia kiedy wywołamy polecenie dir w katalogu, gdzie znajduje się tysiące plików. System wtedy zaczyna wyświetlać listę, która wydaje się trwać w nieskończoność. Oczywiście Wiersz polecenia pozwala na zatrzymanie lub anulowanie polecenia i przywrócenie znaku zachęty. Aby zatrzymać działanie polecenia naciskamy kombinację klawiszy [Ctrl + S] lub klawisz Pause. Aby natomiast anulować polecenie wciskamy kombinację [Ctrl + C] lub [Ctrl + Break].

Pracując z Wierszem poleceń zdarza nam się popełniać błędy. Chociaż bardzo dobrze piszemy na klawiaturze, chociaż potrafimy wymienić kolejno klawisze znajdujące się obok siebie, to czasem robimy małe literówki. Jeżeli rozmawiamy z kimś przez Gadu-Gadu nie ma to większego znaczenia nasz kolega bez problemu nas zrozumie. Ale komputer nie jest już tak wyrozumiały. Jeżeli popełnimy choćby najmniejszy błąd on nie będzie wiedział co ma robić. Kiedy wpisujemy do Wiersza polecenia krótką komendę i popełnimy błąd, przepisanie polecenia nie jest dla nas uciążliwe. Jeżeli jednak wystukamy z błędem długą nazwę katalogu i mamy ją wpisywać jeszcze raz, to praca z komputerem staje się uciążliwa. Na szczęście Wiersz polecenia w Windows XP nie dopuszcza do tego abyśmy się denerwowali ponieważ oferuje szereg opcji pozwalających na poprawianie, powtarzanie wpisywanych poprzednio poleceń. Poniższa tabela zawiera skróty ułatwiające prace z Wierszem polecenia.

Strzałka w lewo Przesuwa wskaźnik o jeden znak w lewo.
Strzałka w prawo Przesuwa wskaźnik o jeden znak w prawo.
Ctrl + Strzałka w lewo Przesuwa wskaźnik o jeden ciąg w lewo.
Ctrl + Strzałka w prawo Przesuwa wskaźnik o jeden ciąg w prawo.
Home Przesuwa wskaźnik na początek linii.
End Przesuwa wskaźnik na koniec linii.
Strzałka w górę Wyświetla na ekranie poprzednie polecenie.
Strzałka w dół Wyświetla na ekranie następne polecenie.
PageUp Wyświetla na ekranie pierwsze wpisane polecenie.
PageDown Wyświetla na ekranie ostatnie wpisane polecenie.
F7 Wyświetla na ekranie historię poleceń.
F8 Wyświetla na ekranie polecenie z historii zaczynające się od liter już wpisanych.
Alt + F7 Czyści historię poleceń.
Esc Kasuje wpisane polecenie.

Kiedy wpisujemy komendę w Wierszu poleceń i zatwierdzamy ją klawiszem Enter jest ona wykonywana a następnie zapamiętywania w historii poleceń. Dzięki temu możemy powrócić do każdego słowa wpisywanego w konsolę. Aby wyświetlić historię poleceń naciskamy klawisz F7. W standardowo w białym okienku pojawia się lista używanych w tej sesji komend. Naciskając strzałki w górę i w dół możemy wybrać polecenie, które chcemy powtórzyć a następnie klawiszem Enter zatwierdzić je. Jeżeli polecenie, które znajduje się w historii jest podobne do tego jakie chcemy wpisać (np. różni się jedną literką) po jego wybraniu naciskamy strzałkę w prawo. Spowoduje to wypisanie polecenia w konsoli, ale system go nie wykona. Będziemy mogli zmienić nieodpowiadające nam znaki.

Jeżeli w historii poleceń znajduje się już bardzo dużo komend a potrzebujemy jednej z tych, które znajdują się gdzieś tam bardzo daleko możemy wpisać początek komendy i nacisnąć klawisz F8 spowoduje to przeszukanie historii od początku i wyświetlenie pierwszego polecenia zaczynającego się od liter, które wpisaliśmy. Jeżeli po wciśnięciu klawisza pojawi się polecenie ale nie to, o które nam chodziło musimy wciskać przycisk F8 do tego momentu aż nasza upragniona komenda wyświetli się. Skrót ten bardzo przyspiesza pracę z Wierszem polecenia dlatego warto nauczyć się go i stosować jak najczęściej.

Pracę z Wierszem polecenia można dodatkowo ułatwić sobie używając symboli wieloznacznych. Konsola w Windows XP rozpoznaje dwa symbole wieloznaczne: znak zapytania (?) oraz gwiazdkę (*). Znak zapytania zastępuje w poleceniu literę. Jeżeli w folderze znajdują się następujące pliki: Ala.txt, Ela.txt, Elżbieta.txt, Pawel.txt. polecenie dir ?la.txt wyświetli pliki oznaczone trzyliterowymi imionami kobiet. Gwiazdka natomiast zastępuje nieokreślony ciąg znaków. Komenda dir El*.txt wypisze na ekranie pliki oznaczone różnymi formami imiona Elżbieta. Symboli wieloznacznych możemy dość dowolnie używać i np. będąc na dysku systemowym polecenie cd Doc*/Adm*/pul* przeniesie nas do katalogu Pulpit na koncie administratora (jeżeli oczywiście takie konto istnieje). Jeżeli jednak w danym folderze będzie się znajdować więcej niż jeden plik lub katalog zaczynający się od wpisanych przez nas liter Wiersz polecenia zastosuje podaną komendę do pierwszego pod względem alfabetycznym pliku lub katalogu. Symbole wieloznaczne są bardzo przydatne przy operacjach na plikach. Wpisując gwiazdkę i wymagane przez nas rozszerzenie możemy wyświetlić a potem np. skopiować pliki jednego typu.

W Wierszu polecenia istnieją dodatkowe symbole usprawniające oraz zwiększające możliwości konsoli. Dzięki nim możemy szybciej uruchamiać programy, zapisywać w plikach to, co widzimy na ekranie, a nawet tworzyć bardzo wydajne programy. Są to również podstawy potrzebne do tworzenia programów wsadowcyh. Poniższa tabela zawiera symbole przydatne każdemu kto chce profesjonalnie używać Wiersza polecenia.

& Łączy dwa lub więcej poleceń.
&& Łączy dwa lub więcej poleceń, przy czym połączenie po prawej stronie znaków jest wykonywanie tylko wtedy gdy polecenie po lewej stronie znaków zostało wykonane pomyślnie.
|| Łączy dwa lub więcej poleceń, przy czym połączenie po prawej stronie znaków jest wykonywanie tylko wtedy gdy polecenie po lewej stronie znaków zostało wykonane niepomyślnie.
| Przekazuje dane wyjściowe jednego programu do danych wejściowych drugiego programu.
> Przekierowuje dane wyjściowe.
>> Przekierowuje dane wyjściowe do pliku, przy czym nie nadpisuje pliku, tylko dopisuje dane.
< Przekierowuje dane wejściowe.
^ Informuje system, że znak po daszku nie jest znakiem szczególnym.

Czasami aby przyspieszyć pracę z konsolą chcemy uruchomić dwa lub więcej poleceń naraz. Jednak nie możemy wpisać dwóch komend w jednej linijce ponieważ Wiersz polecenia drugi ciąg znaków uzna za parametr pierwszego polecenia. Znak szczególny ampersand (&) rozwiązuje ten problem. Stawiając & pomiędzy poszczególne komendy system będzie wykonywał je od prawej do lewej. I tak wpisując w wierszu polecenia ciąg: mkdir pawel & cd pawel spowodujemy utworzenie nowego katalogu (mkdir), a następnie wejdziemy do niego (cd).

Pisząc w jednej linijce ciąg poleceń. Zdarza się, że wykonanie jednej komendy jest zależne od poprawnego zrealizowania poprzedniej. Dwa znaki ampersand tworzą instrukcję warunkową, czyli polecenie po prawej stronie zostanie wykonane tylko wtedy, gdy komenda po lewej stronie znaków zostanie wykonana bezbłędnie. Zademonstrujemy to zmieniając w poprzednim poleceniu znak specjalny: mkdir pawel && cd pawel. Teraz Wiersz polecenia nie będzie próbował wejść do do katalogu pawel jeżeli polecenie mkdir nie wykona się poprawnie, np. w wypadku gdy dysk chroniony jest przed zapisem.

Te dwa znaki maja znaczenie przeciwne do &&. Polecenie, które znajdujące się po prawej stronie dwóch znaków potoku (||) wykona się tylko wtedy gdy komenda z lewej strony zwróci kod błędu. Rozwińmy naszą poprzednią komendę:  mkdir pawel && cd pawel || echo "dysk zabezpieczony przed zapisem". Ten ciąg poleceń jeżeli będzie mógł utworzy katalog a następnie do niego wejdzie. Jeżeli jednak polecenie mkdir nie wykona się poprawnie, na ekranie zostanie wyświetlony (echo) przez nas napisany komunikat. Symbole && oraz || może nie są niezbędne przy korzystaniu bezpośrednio z konsoli, jeżeli jednak zamierzamy pisać programy wsadowe(odnosnik do wsadowych) podwójny ampersand i podwójny potok jest jednym ze sposobów tworzenia instrukcji warunkowych, podstawowego składnika programowania.

Pojedynczy znak potoku dane wyjściowe jednego programu lub polecenia przekazuje innemu programowi lub poleceniu jako parametr. | jest najczęściej stosowany z poleceniem more. To polecenie wyświetla linijka po linijce tekst który zostanie podany jako parametr. Jeżeli jesteśmy w katalogu, w którym  znajduje się wiele plików i katalogów a polecenie dir powoduje wyświetlenie tylu danych, że nie mieszczą się na ekranie wtedy używamy polecenia more a system zaczyna wyświetlać informacje w bardziej przyjazny dla nas sposób. Aby dowiedzieć się dokładnie, jak pomocne działanie ma znak potoku możemy w folderze C:\Windows wywołać polecenie: dir | more.

Programy i polecenia zazwyczaj wyniki swojej pracy wyświetlają na ekranie. Czasami może być to dla nas niekorzystne. Wyników może być dużo a nam ciężko analizuje się dane na komputerze. Czasem chcielibyśmy owoce naszej pracy zachować na dysku, albo przenieść na inny komputer. Znak > pozwala nam na to. Zmienia on mianowicie standardowe wyprowadzenie danych jakim zazwyczaj jest ekran na plik lub drukarkę. Komenda dir > lista.txt spowoduje wykonanie komendy wyświetlenia plików w danym folderze, ale lista ta nie zostanie pokazana nam na ekranie tylko zapisana w pliku lista.txt. Jedna strzałka w prawo powoduje utworzenie pliku i zapisanie w nim wyników pracy polecenia, które znajduje się po prawej stronie znaku. Jeżeli dany plik już istnieje to jego zawartość zostanie skasowana, a w jej miejsce zostaną wpisane nowe dane.

Jeżeli chcemy zapisać do pliku więcej niż tylko jeden wynik naszych poczynań, powinniśmy użyć dwóch znaków strzałki (>>). Ten symbol nie kasuje poprzedniej zawartości pliku, tylko dopisuje na końcu danych nowe linie.

Oba znaki (> i >>) powodują przekierowanie danych wyjściowych ze standardowego tekstu na ekranie do pliku. Jednak programiści piszą często tak programy aby komunikaty i błędy nie pojawiały się jako standardowy tekst tylko jako tekst błędu. Jest to bardzo przydatna cecha dla użytkownika. Jeżeli używając takiego programu przekierujemy wyniki do pliku to program i tak będzie na ekranie wypisywał informacje o swoim działaniu. Dzięki temu nie będziemy musieli zaglądać do pliku aby dowiedzieć się co program aktualnie robi. Jednak czasami takie zachowanie może być dla nas kłopotem. Na przykład jeżeli podczas działania programu wyświetlają nam się błędy na ekranie i chcemy poradzić się kolegi w sprawie naszego problemu. Podanymi wyżej sposobami nie uda nam się przekierować błędów do pliku. Aby to zrobić musimy napisać 2> lub 2>>.

W Wierszu polecenia możemy nie tylko przekierowywać dane wyjściowe, ale również dane wejściowe. Robimy to za pomocą strzałki w lewo (<). Standardowe polecenia, które pozwalają na przyjęcie danych z pliku to more oraz sort. Jeżeli utworzyliśmy plik lista.txt (opisany wyżej) możemy teraz przesłać go do polecenia sort aby dane, które się w nim znajdują zostały posortowane. Robimy to następująco: sort < lista.txt.

W systemie Windows XP katalogi oraz pliki mogą w sobie zawierać znak ampersand (&). Jest on również używany jako znak szczególny do łączenia dwóch lub więcej poleceń. Może to prowadzić do pewnych niejasności, system nie jest wstanie zadecydować czy & jest w konkretnym wypadku znakiem szczególnym czy zwykłym znakiem. Za to możemy o tym zadecydować my. Stosując przed każdym spornym znakiem symbol daszka (^) informujemy Wiersz polecenia, że następny znak jest zwykły i nie należy go stosować szczególnie. Innym sposobem rozwiązania spornej kwestii jest umieszczenie nazwy katalogu lub pliku w cudzysłowie co przyniesie taki sam efekt. Następujące polecenia są równoważne: mkdir p^&w, mkdir "p&w".

Wiersz polecenia posiada narzędzie Doskey, którego zadaniem jest jeszcze większe ułatwianie nam pracy z konsolą. Dzięki tej aplikacji możemy tworzyć proste makra i używać ich stosując wymyślone przez nas, proste nazwy. Ciąg poleceń wpisujemy w następujący sposób: najpierw podajemy nazwę programu czyli doskey, następnie wymyśloną przez nas nazwę. Może to być liczba lub ciąg znaków, który ułatwi nam identyfikacje makra. Następnie po znaku  równości wpisujemy komendę lub ciąg komend, które mają się wykonać. Przykładowe makro może wyglądać następująco doskey qp = mkdir pawel. Teraz jeżeli w Wierszu polecenia wpiszemy qp system utworzy nam katalog pawel. To polecenie nie jest rewolucyjne ale możemy je rozwijać. Stwórzmy makro, które podobnie jak w przykładzie omawianym przy znakach szczególnych będzie tworzyło folder pawel, jeżeli operacja się powiedzie konsola wejdzie do niego a jeżeli utworzenie zakończy się z błędem wyświetli się komunikat. Polecenie tworzące nasz prosty program będzie wyglądało następująco doskey qo=mkdir pawel ^&^& cd pawel ^|^| echo "dysk zabezpieczony przed zapisem". Zastanawiamy się dlaczego w komendzie znajdują się cztery daszki. Otóż wpisując makra doskey przed każdym znakiem szczególnym trzeba zastosować znak ^. W innym wypadku system zignorowałby wszystko co znajduje się po spacji. Standardowym znakiem łączenia dwóch poleceń w doskey'u jest znak $t. Jednak przy jego pomocy nie uzyskamy instrukcji warunkowej. Co najwyżej możemy utworzyć katalog a następnie do niego wejść. Nie posiadamy operatora definiującego jak system ma się zachować w wypadku błędu. Również ten przełącznik nie sprawdza czy poprzednia instrukcja wykonała się. Oznacza to, że nawet jeśli nie uda się utworzyć katalogu, makro będzie próbowało do niego wejść. Ciąg poleceń tworzących katalog i wchodzących do niego z zastosowaniem $t wygląda następująco: doskey qi=mkdir pawel $t cd pawel. W makrach doskey możemy stosować zmienne, które ogromnie zwiększają ich możliwości i sprawiają że napisane przez nas miniprogramy są bardziej elastyczne. Zmienne oznaczone są symbolem dolara i cyfrą. Nie deklarujemy ich w żadnym miejscu. Do makra przekazujemy je w formie parametru. Pierwszy parametr jest równoznaczny ze zmienną $1, drugi $2, trzeci $3 i tak aż do dziewięciu. Deklaracja programu, który będzie tworzył katalog przekazany jako parametr i wejdzie do niego będzie miała postać: doskey qu=mkdir $1 $t cd $1. Teraz wpisując w konsoli polecenie qu marcin, system utworzy katalog marcin po czym wejdzie do niego. Jeżeli wpisaliśmy nasze makra możemy sprawdzić ich polecenia i działanie wpisując w Wierszu polecenia komendę doskey /macros.

Nasze programiki niestety działają tylko dla bieżącej sesji konsoli. Jeżeli napisaliśmy nasze makro i wiemy, że jeszcze przyda nam się kiedyś w naszej pracy. Powinniśmy je wyeksportować do pliku a następnie przywrócić i dalej cieszyć się z naszych ułatwień. Zapisujemy nasze makra standardowo przekierowując strumień wyjściowy do pliku: doskey /macros > c:\makra.txt. Aby ponownie wczytać makra z dokumentu tekstowego zachowanego na dysku używamy polecenia doskey /macrofile=c\makra.txt. Jeżeli tak przyzwyczailiśmy się do naszych programików, że wczytujemy je zawsze kiedy uruchamiamy konsolę powinniśmy rozważyć umieszczenie powyższej komendy w poleceniach Autorun Wiersza poleceń.

W makrach oraz programach wsadowych potrzebujemy czasem użyć zmiennych, które są dla danego komputera takie same. Możemy np. chcieć utworzyć katalog lub plik o nazwie aktualnie zalogowanego użytkownika w folderze Windowsa. Aby uzyskać potrzebne informacje przeglądamy zmienne systemowe a następnie używamy ich w naszych programikach. Aby wyświetlić na ekranie wszystkie zmienne wpisujemy polecenie set.

Po lewej stronie listy wyświetlone są nazwy zmiennych a po prawej ich wartości. W programach zmiennych używamy ograniczając je z dwóch stron znakami procentu (%). Korzystając z tej listy tworzymy nasze makro: doskey qy = mkdir %SystemRoot%\%UserName% $t cd %SystemRoot%\%UserName%. Jeżeli wyświetlimy teraz wszystkie nasze makra poleceniem doskey /macros zauważymy że w miejsca %SystemRoot% i %UserName% zostały już podstawione wartości. W naszym przypadku G:\Windows oraz Marta. Poniższa tabela przedstawia zmienne systemowe przydatne w czasie pracy z Wierszem polecenia:

AppData Lokalizacja katalogu Dane aplikacji aktualnie zalogowanego użytkownika.
ComSpec Lokalizacja pliku wykonywalnego Wiersza polecenia.
HomeDrive Litera dysku, na którym znajduje się katalog domowy użytkownika.
HomePath Lokalizacja katalogu domowego użytkownika.
Os Nazwa systemu operacyjnego. Jeżeli jest to system Windows XP wyświetlane jest Windows_NT w przypadku Windows'a 2000 - Windows_2000
Path Lokalizacja katalogów, w których system wyszukuje programy. Jeżeli wpiszemy w Wierszu polecenia nazwę pliku wykonywalnego system poszukuje go właśnie w tych folderach.
ProgramFiles Lokalizacja katalogu Program files.
SystemDrive Litera dysku, na którym znajduje się katalog Windows.
SystemRoot Lokalizacja katalogu, w którym znajdują się pliki systemowe. Jeżeli nie zmieniliśmy tego w czasie instalacji będzie to katalog Windows
Temp Lokalizacja katalogu, w którym znajdują się pliki systemowe.
UserDomain Nazwa komputera lub nazwa domeny, do której komputer jest zalogowany.
UserName Nazwa aktualnie zarejestrowanego użytkownika.
UserProfil Lokalizacja aktualnie zarejestrowanego profilu użytkownika.
WinDir Inna nazwa lokalizacji katalogu, w którym znajdują się pliki systemowe. Jeżeli nie zmieniliśmy tego w czasie instalacji będzie to katalog Windows
Jak wykorzystać Copilot w codziennej pracy? Kurs w przedsprzedaży
Jak wykorzystać Copilot w codziennej pracy? Kurs w przedsprzedaży

Wydarzenia