Dostępność plików
Zajmiemy się teraz wyjaśnieniem praktycznej różnicy między komendami wewnętrznymi i zewnętrznymi, a na ich przykładzie bardzo ważnym zagadnieniem dostępności plików. Generalna zasadą jest, że komputer „widzi" tylko katalog bieżący, tzn. ten, w którym się w danej chwili znajdujemy. Wszystkie pliki w nim zebrane są dostępne. Napisanie nazwy pliku wykonywalnego (a więc z rozszerzeniem .exe, .corn lub .bat) skutkuje wykonaniem programów w nich zawartych. W komendzie path wpisuje się nazwy katalogów (koniecznie z pełną ścieżką dostępu!) zawierających najczęściej używane programy. Z reguły są to te wymienione w ramce i inne dowolnie wybrane przez użytkownika. Nie ma ograniczenia co do liczby podanych katalogów. Nie ma jednak sensu podawać ich zbyt wielu. Ograniczmy się do tych rzeczywiście często używanych. Są jeszcze inne metody upraszczania sobie życia, które poznamy w następnym rozdziale. Po użyciu komendy path tok postępowania komputera jest następujący: po wpisaniu nazwy pliku, np. tree (podanie rozszerzenia nie jest błędem, nie jest jednak konieczne), sprawdza, czy w katalogu bieżącym znajduje się plik tree.com, tree.exe lub tree.bat. Jeśli znajdzie, wczytuje go do pamięci operacyjnej i wykonuje zawarty w nim program. Jeśli nie znajdzie, przystępuje do przeszukiwania katalogów podanych w komendzie path. Przeszukuje w takiej kolejności, w jakiej są wpisane. Po napotkaniu szukanego pliku przystępuje do pracy (wczytanie, wykonanie). Dopiero jeśli w żadnym z katalogów podanych komendzie path nie znajdzie szukanego pliku, wyświetla znany komunikat (Bad command or file name). Wracając do komend DOS - wewnętrzne są zawsze dostępne, bez żadnych dodatkowych zabiegów (path też jest komendą wewnętrzną). Aby komendy zewnętrzne również były zawsze pod ręką, trzeba użyć komendy path z wpisanym katalogiem zawierającym wszystkie pliki DOS (z reguły katalog ten nazywa się DOS). Dociekliwi mogą postawić pytanie: dlaczego komendy wewnętrzne są zawsze dostępne (i bez użycia komendy path)? Za ich wykonanie odpowiada konkretny plik (command.com), a przecież nie ma go w każdym katalogu (jest dostępny tylko w katalogu głównym, bo tam się zawsze znajduje). Ten, komu nasunęło się takie pytanie, zanim je przeczytał, zasługuje na specjalne wyróżnienie (może zjeść całą babkę upieczoną w I części). Wyjaśnienie tej sprzeczności jest następujące: plik command.com jako jeden z trzech plików systemowych jest wczytywany do pamięci operacyjnej w trakcie procedury startowej komputera. Pozostaje tam cały czas (dokładniej jego tzw. część rezydentna), aż do wyłączenia komputera. Nie musi więc być wczytywany z dysku. Jest zawsze pod ręką w pamięci operacyjnej. Jeszcze raz gratulacje dla tych, którzy sami wychwycili problem. Komenda path jest zwyczajowo umieszczana w pliku autoexec.bat. Jak pamiętamy, plik ten jest automatycznie wykonywany w czasie procedury startowej. Dzięki temu nie musimy jej wprowadzać po każdym uruchomieniu komputera. Jeśli zainstalowaliśmy właśnie nowy program pod DOS, którego będziemy często używać, możemy uzupełnić komendę path, zapisaną w autoexec.bat, o nazwę stosownego katalogu. Nowy program będziemy uruchamiać, pisząc nazwę jego głównego pliku wykonawczego. Chyba że zastosujemy jeszcze chytrzejsze sztuczki. Ale o tym już niedługo.