Terminal Linuxa – garść przydatnych informacji

W tym wpisie chciałbym się podzielić z Wami garścią porad dotyczących użytkowania terminala Linuxa, kilkakrotnie spotkałem się z prośbami o udzielenie jakichś porad „jak zacząć z terminalem?” oraz „co warto wiedzieć” i w tym wpisie chciałbym zrobić krótki spis użytecznych informacji, wskazówek, komend o których warto wiedzieć.

Chciałbym też podkreślić, że ten wpis nie wyczerpuje tematu, ani nawet nie próbuje być poradnikiem terminala. Jeżeli uznacie, że nie wspomniałem o czymś, a powinno się tutaj znaleźć to zapraszam do podzielenia się poradą/komendą w komentarzach.

 

Poruszanie się po systemie plików

#1

Do wskazania na ścieżkę, w której obecnie jesteśmy można użyć  . . Do wskazania na ścieżkę „wyżej” (rodzica) służy  .. .

#2

Aby wrócić do poprzednio odwiedzonej ścieżki można użyć cd - .

#3

Rozpoczynając ścieżkę do pliku używając tyldy  ~[username] możemy dostać się do folderu domowego użytkownika, używając wersji z samą tyldą  ~ możemy dostać się do folderu bieżącego użytkownika.

 

Misc

#1

Nie trzeba pisać ręcznie całych nazw plików/ścieżek. Do automatycznego wykończenia nazwy można użyć klawisza [Tab]. W razie gdyby w danym folderze był dostęp do kilku plików składających się do plików zaczynających się w podobny sposób to można użyć [Tab] ponownie aby wypisać listę plików pasujących do wyrażenia.

#2

Używając  alias możemy stworzyć aliasy na istniejące komendy, np zamiast pisać za każdym razem  sudo apt-get update && sudo apt-get upgrade możemy stworzyć alias o nazwie „update”, któremu przypiszemy wcześniej wspomniany ciąg komend.

Alias stworzony w ten sposób istnieje do momentu zamknięcia terminala, aby dodać go na stałe należy go dodać do pliku  ~/.bash_aliases.

Możliwe, że trzeba też dodać poniższy kod do pliku  ~/.bashrc (np. w Linuxie Mint jest to konieczne)

#3

Umieszczając w miejscu argumentu do komendy/programu A inne wywołanie programu B wewnątrz `` sprawimy, że wyjście programu B zostanie przekazane jako argument do programu A (brzmi trochę skomplikowanie). Innymi słowy: taka konstrukcja:  $ A `B` spowoduje że najpierw zostanie wywołana zawartość wewnątrz , a następnie wyjście klamer zostanie przekazane jako argument do A.

#4

Kod wyjścia ostatnio uruchomionego programu można sprawdzić przy użyciu  echo $?.

#5

Do wydrukowania listy wszystkich obecnie otwartych plików w systemie przez programy można posłużyć się programem lsof , dodatkowo samą listę można zawęzić np. do listy programów, które otworzyły porty przy użyciu switcha -i (polecam rzucić okiem na dostępne opcje programu).

#6

(dzięki efik) Używając kombinację klawiszy [LCTRL] + [LEFT / RIGHT] możemy przesuwać kursor o jedno słowo w lewo / prawo.

Kombinacja [LALT] + [BACKPACE] umożliwia usuwanie po jednym słowie.

#7

[LALT] + [wciśnięcie liczby=N] + [dowolny znak=C] powoduje wygenerowanie w terminalu znaku C powtórzonego N razy.

Np. wciśnięcie [LALT]+2341 (można teraz puścić [LALT]) i kliknięcie litery „A”, spowoduje wygeneruje litery „A” 2341 razy.

Screenshot_2016-06-29_14-56-43

 

Przydatne programy

W tym paragrafie chciałbym pokrótce przedstawić kilka dodatkowych programów, które warto zainstalować. Jak zwykle kolejność losowa.

xclip

Czyli zarządzanie schowkiem systemowym z poziomu terminala.

htop

Ładniejsza wersja programu top, który pozwala na interaktywne podglądanie aktywnych procesów.

Screenshot_2016-06-29_11-21-01

locate

Pozwala na bardzo szybkie znajdowanie plików po nazwie dzięki korzystaniu z bazy danych.

Słowo końcowe


Jak można zauważyć poruszyłem jedynie niektóre aspekty z ciekawostek terminala, które mogą ułatwić pracę na nim. Nie poruszyłem np tematu pipe’ów, podstawowych komend, fifo, itp. a to dlatego że te zagadnieniach są bardzo szeroko i szczegółowo omawiane w wielu poradnikach, książkach, itp.

Zachęcam do podzielenia się swoimi wskazówkami, ciekawymi komendami przy użyciu systemu komentarzy, to umieszczę je w samym artykule, który postaram się aktualizować o nowe elementy / rzeczy które warto wiedzieć (obecnie nie jestem w stanie przypomnieć sobie innych „ciekawostek”).