Linux Mint/Terminal dla początkujących

Z MruczekWiki

Pomóż nam rozbudować ten artykuł!
Do zrobienia: Dodać resztę zagadnień omówionych na Linux Journey w lekcjach "Command Line", "Text-Fu", "Advanced Text-Fu" itp.


Poniższy poradnik ma na celu wprowadzić w świat linuxowego Terminala.


Po co używać terminal?

Gdy patrzysz na ludzi wklepujących komendy, być może widziesz ich jak na poniższym memie:

Jednak w rzeczywistości odpowiednio używany Terminal może znacząco przyspieszyć Twoją pracę.

Dobrym przykładem jest poradnik o poprawianiu czcionek w Linux Mint. W sekcji o modyfikowaniu pliku /etc/environment najszybsza metoda wykorzystuje Terminal. Wystarczy wkleić gotowy tekst i już. Żadnego otwierania folderów, uruchamiania programów itp.

Nawet jeśli na co dzień wolisz używać myszki, co jakiś czas możesz trafić na problem, który terminalem rozwiążesz znacznie szybciej niż innymi sposobami. Dlatego warto zrozumieć, jak działa i jaki ma potencjał.


Pierwsze kroki

Terminal możesz uruchomić z menu start, jak każdy inny program. Alternatywą jest użycie skrótu klawiszowego.

Skrót klawiszowy
Ctrl + Alt + T - otwiera Terminal
Skrót nie działa?


Gdy uruchomisz terminal, powinno się pokazać mniej więcej coś takiego:

user@host:~$


Symbol dolara oznacza, że terminal jest gotowy na polecenia użytkownika. Z racji, że klasyką jest wiadomość "Hello world", my dodamy lokalnego smaczku i wyświetlimy coś innego.


Wpisz lub wklej poniższe polecenie i naciśnij Enter.

echo Siema xDDDDD


Wklejanie do terminala
Domyślnie w terminalu do wklejania służy skrót Ctrl + Shift + V.

Możesz też kliknąć na terminal prawym przyciskiem myszy i wybrać Paste.


Rezultatem powinno być coś takiego: user@host:~$echo Siema xDDDDD

Siema xDDDDD

Plus kolejna linijka pozwalająca wpisać następne polecenie.


Jeśli chcesz, możesz teraz wypróbować kilka kolejnych poleceń:

  • date - wyświetla aktualną datę
  • whoami - wyświetla, jako kto jesteś zalogowany/a


Personalizacja terminala

Terminal można spersonalizować na róźne sposoby. Jeśli coś dla Ciebie jest bardzo niewygodne, być może właśnie temu zaradzimy.


Kliknij prawym przyciskiem myszy na okno terminala i wybierz Preferences.


Możesz tutaj zmienić mnóstwo elementów, w tym kolorystykę, zachowanie kursora i skróty klawiszowe.


Uważaj na zmiany!
Pamiętaj jednak, że im więcej rzeczy pozmieniasz, tym bardziej możesz oddalić się od gotowych poradników, co zmusi Ciebie do większej czujności. Gdy poradnik każe nacisnąć jakąś kombinację klawiszy, musisz pamiętać, że u Ciebie jest inna itp.


Nawigowanie po folderach

Wymagana wiedza
Aby lepiej zrozumieć tę sekcję, wskazana jest znajomość podstaw organizacji plików w Linuxie.

Jeśli nie wiesz, jaką lokalizację oznaczamy symbolem tyldy (~), zachęcamy, by najpierw przeczytać poradnik o ścieżkach.


Gdy uruchomisz terminal z menu start, prawdopodobnie będzie on się znajdował w /home/user, co jest zobrazowane za pomocą symbolu tyldy ~ przed dolarem.

user@host:~$


Uruchamianie terminala w folderze
Aby uruchomić Terminal w innym miejscu, w systemie możesz otworzyć folder, nacisnąć prawy przycisk myszy i wybrać Open in Terminal.

Alternatywnie możesz przenieść terminal za pomocą komend, co zostanie wyjaśnione w dalszej części poradnika.


Aby sprawdzić, gdzie się teraz znajdujesz, możesz użyć polecenia pwd .

user@host:~$pwd

/home/user


Załóżmy, że znajdujesz się w /home/user (~). Chcesz zorientować się, co masz w tym folderze. Możesz użyć do tego polecenia ls , które wyświetli listę plików i folderów. Polecenie ls możesz wzbogacić o argumenty, które umieszcza się po spacji oraz znaku minus (-).

Przykładowo, gdy chcesz dodać argument "a" każący uwzględnić ukryte foldery, do terminala wpiszesz:

ls -a

Argumentów może być więcej. Na przykład jeśli chcesz uwzględnić ukryte elementy ("a") oraz wyświetlić listę w szczegółowym widoku ("l"), wpiszesz:

ls -la

Kolejność liter odpowiada kolejności, w jakiej zostaną wykonane poszczególne argumenty. Tu ona nie ma znaczenia i można bez żadnych konsekwencji zamienić litery. W przyszłości możesz jednak trafić na przypadki, gdy kolejność będzie istotna.


Ok, jesteś w folderze /home/user (~), jest wyświetlona lista i chcesz przenieść terminal do podfolderu Documents. Użyjesz do tego polecenia cd wraz z nazwą podfolderu.

cd Documents

Po przeniesieniu terminal powinien zmienić wygląd na:

user@host:~/Documents$

To oznacza, że od teraz polecenia będą wykonywane w tej lokalizacji. Gdy więc użyjesz komendy ls , wyświetli ona foldery i pliki w folderze Documents.


Autouzupełnianie w terminalu
Nie musisz wpisywać pełnej nazwy. Możesz nacisnąć klawisz Tab, a terminal sam uzupełni resztę, jeśli będzie tylko jedna możliwość.

Przykładowo gdy masz w środku 3 foldery na literę "d" - "Desktop", "Documents", "Downloads", wpisanie cd d to za mało, bo są trzy możliwości i Tab nic nie zrobi. Ale jeśli wpiszesz cd doc , jest tylko jedna możliwość, więc po naciśnięciu Tab powinno się uzupełnić do cd Documents .


Rozmiar liter
W terminalu rozmiar liter ma znaczenie.

Jeśli podfolder to Documents, nie zadziała cd documents .


Aby cofnąć się do poprzedniej lokalizacji, możesz użyć :

  • cd - (minus), które oznacza "cofnij mnie do poprzedniej lokalizacji, w jakiej byłeś"
  • cd ~ (tylda), które przeniesie do /home/user niezależnie od tego, gdzie teraz jesteś


Załóżmy teraz, że chcesz przejść w górę z /home/user do home. W tym celu możesz użyć:

  • cd .. , które przenosi od nadrzędnego folderu względem obecnego
  • cd /home , które przeniesie do home niezależnie od tego, gdzie teraz jesteś


Co zrobić, gdy lokalizacja zawiera spację?
Terminal używa spacji jako przedziału pomiędzy argumentami. Gdy więc folder nazywa się zabawa spacja, dasz 2 argumenty komendzie, która oczekuje jednego argumentu (nazwy folderu).

Aby temu zaradzić, otocz nazwę znacznikami ' lub " np. cd 'zabawa spacja' . Analogicznie, gdy ścieżka zawiera spację np. cd '~/Documents/zabawa spacja' .

Teraz wiesz, czemu osoby często korzystające z Terminala starają się unikać spacji w nazwach plików i folderów. ;-)


Komendy do nawigowania po folderach
Polecenia Terminala służące do nawigowania po folderach:

pwd - wyświetla aktualną lokalizację

cd ścieżka - przenosi terminal do innej lokalizacji

cd nazwa - przenosi do wskazanego podfolderu

cd .. - przenosi do nadrzędnej lokalizacji

cd ~ - przenosi do folderu "home/user"

cd / - przenosi do pierwotnego folderu systemu

cd - - przenosi do poprzedniej lokalizacji

ls - wyświetla listę plików i folderów

ls ścieżka - ls we wskazanej lokalizacji

ls -a - ls z uwzględnieniem ukrytych elementów

ls -l - ls ze szczegółowym widokiem

ls -la - 2 powyższe w 1

Pomoc w Terminalu

Jeżeli chcesz dowiedzieć się więcej o jakiejś komendzie, możesz użyć do tego Terminala. Niestety część komend jest opisana pod help , zaś inna część pod man (manual).

Komendy pomocy

help - lista komend ze stroną pomocy pod "help"

help komenda - strona pomocy dla komendy bash (echo, logout, pwd itp.)

man man - informacje o instrukcjach

man komenda - wyświetla szczegółową instrukcję komendy (aby wyjść z instrukcji, naciśnij Q)

whatis komenda - wyświetla krótki opis działania komendy, która posiada instrukcję (manual)


Wejście (input) i wyjście (output)

Zanim zaczniemy!
W tej sekcji będziemy używać komend które tworzą oraz modyfikują pliki.

Zanim zaczniesz wklejać polecenia, upewnij się, że Terminal znajduje się w dogodnej dla Ciebie lokalizacji. Domyślnie będzie tworzyć pliki w home/user, co może nie być optymalne. Dla celów szkolenia możesz np. utworzyć folder "Zabawa" w miejscu wygodnym dla Ciebie i uruchomić w nim Terminal.


Pamiętasz z sekcji o pierwszych krokach polecenie "echo"? Użyliśmy go, by wyświetlić napis "Siema xDDDDD". Być może wydawało się Tobie, że trudno o bardziej bezużyteczne polecenie. Poniżej zostanie użyte do czegoś mądrzejszego... czyli utworzenia pliku z napisem "Siema xDDDDD"!


Umieść terminal w miejscu, gdzie chcesz utworzyć plik, a następnie wpisz lub wklej:

echo Siema xDDDDD > fajne.txt


W wybranym folderze powinien pojawić się plik tekstowy o nazwie fajne.txt, a w nim przezabawne "Siema xDDDDD".


Co tu się właśnie wydarzyło?

Za pomocą znaku > powiedzieliśmy Terminalowi, gdzie ma umieścić wyjście (output) komendy.

Gdy tego nie zrobimy, domyślnym miejscem jest Terminal. Dlatego po wpisaniu samego echo Siema xDDDDD zabawny tekst lądował w Terminalu. My kazaliśmy tekst umieścić w pliku fajne.txt, a że takiego nie było, został utworzony.


Ryzyko utraty danych!
Stosując polecenie echo Tekst > Plik ZASTĘPUJESZ istniejącą zawartość pliku.

Możesz to sprawdzić. Edytuj zawartość pliku fajne.txt, np. spamując losowymi znakami. Następnie wykonaj ponownie polecenie echo Siema xDDDDD > fajne.txt .

Historia poleceń
Jeśli chcesz ponownie użyć tego samego polecenia, nie musisz go wpisywać od nowa. Za pomocą strzałki w górę i strzałki w dół możesz wybierać z historii poleceń.

Wystarczy dotrzeć do echo Siema xDDDDD > fajne.txt i nacisnąć Enter.


Jeśli chcemy dopisać zawartość do pliku zamiast zastępować całą jego zawartość, możemy użyć symbolu >> .

Poniższe polecenie doda nową linijkę "Siema xDDDDD" do pliku fajne.txt.

echo Siema xDDDDD >> fajne.txt


Jeśli lubisz nabijanie postów na Kenex Spam Center, możesz teraz się pobawić i użyć powyższego polecenia wiele razy. Powstanie plik z wieloma siema. Czy może być coś śmieszniejszego? XD


Gdy zechcesz pozbyć się śladów spamerskiej zabawy, możesz wpisać do Terminala poniższe, aby wyczyścić zawartość pliku zabawa.txt. Zostanie pusty plik tekstowy.

> fajne.txt


Teraz za pomocą Terminala przygotuj plik zabawa.txt o treści "Siema xDDDDD". Będzie nam potrzebny. Czyli użyj ponownie polecenia echo Siema xDDDDD > fajne.txt .


Tym razem użyjemy polecenia cat , które pozwoli nam odczytać zawartość pliku w Terminalu.

cat < fajne.txt


W powyższym poleceniu został użyty symbol < , żeby określić wejście (input) komendy. Możemy w ten sposób ustawić, skąd komenda ma wziąć dane.

Po wprowadzeniu polecenia powinno ukazać się coś takiego:

user@host:~/Documents/Zabawa $cat < fajne.txt
Siema xDDDDD


Polecenia cat możemy użyć także, by skopiować zawartość pliku. Wystarczy, że ustawimy zarówno jego wejście i wyjście. Poniższy przykład skopiuje zawartość pliku fajne.txt do fajne2.txt:

cat < fajne.txt > fajne2.txt


Możemy też połączyć wiedzę z dwóch sekcji i utworzyć plik fajne3.txt, którego zawartością będzie szczegółowa lista plików i folderów z home/user.

ls -la ~ > fajne3.txt


Wejście (input) i wyjście (output) komendy

Symbole:

< - ustawia wejście (input)
> - ustawia wyjście (output)


Przykłady:

echo Tekst > Plik - w pliku ustawia wskazaną treść (zastępuje istniejącą)
echo Tekst >> Plik - dodaje na końcu pliku wskazaną treść
> Plik - czyści zawartość pliku
cat < Plik - wyświetla w Terminalu treść pliku
cat < Plik1 > Plik2 - ustawia treść z Plik 1 jako treść Plik 2.
ls -la Ścieżka > Plik - jako treść pliku ustawia szczegółówą listę plików i folderów ze ścieżki


Więcej wiedzy

Jeśli chcesz wiedzieć więcej
Poradnik jest w trakcie tworzenia i obecnie to już wszystko. Jeśli nie chcesz czekać na dalsze części, skorzystaj z poniższych rzeczy:


Linux Journey - bezpłatny kurs online (bez rejestracji)
LinuxCommand.org - podobnie jak wyżej
Linux Terminal Command Reference - lista komend
Podstawy pracy w terminalu w systemie Linux - YouTube