Wspominałem już kilka razy na tym blogu, jakim genialnym narzędziem jest Cygwin. Czasem jednak nie wszystko jest takie proste jak wykorzystanie jego instalatora do “wyklikania” odpowiednich narzędzi i kliknięcia przycisku “dalej”. Jednym z najgorszych typów problemów, z jakimi miałem okazję się zetknąć były te kompletnie nieintuicyjne, które po prostu wymagały odpowiedniej wiedzy, żeby być świadomym możliwego rozwiązania. Takim problemem był właśnie tytułowy brak polecenia clear, bardzo przydatnego podczas pracy w konsoli.

Problem.

Problem powstał w momencie, kiedy zechciałem sobie wyczyścić okienko konsoli i nieświadomy nadchodzącego problemu wpisałem w konsolę dobrze każdemu znane polecenie “clear” [odpowiednik “cls” z interpretera poleceń cmd.exe znanego z systemów rodziny Windows]. Konsola szybko poinformowała mnie o błędzie za pomocą komunikatu:
bash: clear: command not found.
Lekko zdziwiony wpatrywałem się w “czarne okno” próbując doszukać się jakiegoś drugiego dna w wyświetlonym napisie, ale po chwili stwierdziłem, że trudno - nie ma, to nie ma, trzeba zainstalować. Otworzyłem instalator Cygwina i znalazłem to, czego szukałem. Nie, nie miałem na myśli rozwiązania - znalazłem moje drugie dno.

Otóż, prawdziwy problem polegał na tym, że rzeczonego polecenia clear, a raczej programu o tej samej nazwie realizującego to polecenie nie było na liście możliwych do zainstalowania. Spowodowało to moją lekką konsternację, ponieważ nie przewidziałem braku tak podstawowego narzędzia wśród tylu wspaniałych Linuksowych narzędzi przeportowanych na “jedyny słuszny” system operacyjny.

Szybko zapytałem Wujka Google o co tu chodzi i po chwili okazało się, że jednak tym razem komputer ma rację. Przy okazji okazało się także, że wcale nie trzeba mieć go zainstalowanego, żeby korzystać z dobrodziejstw czyszczenia ekranu - są możliwe też inne sztuczki pozwalające na uzyskanie tego samego efektu przy użyciu samej konsoli. ;]

Rozwiązanie.

Jak zapewne się domyślacie, program clear nie był oddzielną paczką, był zawarty w innej, większej paczce narzędzi. Jak myślicie, gdzie się ukrył? A jakże - w zbiorze narzędzi przeznaczonych do operacji na oknie konsoli, w tym przypadku była to biblioteka ncurses. Wystarczy zainstalować ją poprzez instalator Cygwina [drzewo Utils -> ncurses] i można się już cieszyć wspomnianą wyżej funkcjonalnością.

Tak jak powiedziałem, był to jeden z problemów, w przypadku których praktycznie niemożliwe było domyślenie się o co dokładnie chodzi, także tym większą radość mam z rozwiązania go i poszerzenia swojej “wiedzy”.

Podsumowanie.

Ciekaw jestem, czy Wy też mieliście takie “przejścia” z Cygwinem i co o nim sądzicie. Będę wdzięczny za wszelkie informacje na temat - a nuż wypłynie z tego jakiś nowy temat na wpis? Chętnie wspomnę wtedy o autorze komentarza sponsorującego dany problem. ;] Tymczasem do zobaczenia już w piątek!