Powłoka w systemie linux

  • By :
  • Category : Linux

Krótki opis.

Środowisko LINUX, powłoka, zachowanie:

Najpopularniejsze powłoki:

  • sh – jedna z pierwszych
  • ksh – oparta na sh, wnosi dużo nowego ale też się bardzo od niej różni
  • bash – oparta na sh, kompatybilna (czy w 100%) z sh, korzysta również z ksh
  • zsh – oparta na bash, dodano do niej nowy zbiór funkcji

Istnieją też powłoki interpretujšce języki programowania, na przykład: csh, tcsh – wzbogacona o funkcje języka C.

Symbole:

Pamiętaj o symbolach *, ?

[] – zastępuje zestaw znaków podany w nawiasach, w nawiasie można wymienić znaki po sobie [ab] lub napisać [a-z] (lub na przykład [A-z], [A-z0-9]) albo stosować zaprzeczenie [!0-9]. – pytanie: jak zrobić tak, żeby wypisać wszystkie pliki które w nazwie majš tylko okreœlone literki – na przykład wszystkie literki to ,,a’’ albo ,,b’’.

Powłoka utrzymuje też zmienne œrodowiskowe. Każda zmienna œrodowiskowa ma nazwę oraz wartość. Ważniejsze zmienne środowiskowe:

HOME
LINE
PWD

USER, LOGNAME – zwykle to samo, ale może się różnić, jeœli użytkownik zmienia poziom uprawnień (su) (nie wiem, czy to jest aktualne ?? – w ubuntu nie działa)

W powłoce znak $ oznacza nazwę zmiennej. Na przykład, jeœli chce się dowiedzieć, jakš wartoœć ma zmienna HOME, należy wydać polecenie echo $HOME. Oprócz $ bash proponuje jeszcze trzy zmienne: $, $?; $!. Oznaczajš one kolejno: pid powłoki, status ostatniego polecenia powłoki, pid ostatniego polecenia.

W bash są trzy rodzaje cytowania. Znaki “ (lewy apostrof), ‘’ (apostrof) oraz „” (cudzysłów). Cudzysłowy interpretują znaki \, ‘, $. Apostrofy interpretujš tylko lewy apostrof. Co w rezultacie dla cudzysłowie da: echo „$HOME”  /home/labiol, natomiast dla: echo ‘$HOME’  $HOME. Poniżej kilka przykładów:

labiol@hosts:~> echo “to jest: `date`”

to jest: nie mar 11 11:16:30 CET 2007

labiol@hosts:~> echo ‘to jest: `date`’

to jest: `date`

labiol@hosts:~> echo $HOME

/home/labiol

labiol@hosts:~> echo ‘$HOME’

$HOME

labiol@hosts:~> echo “$HOME”

/home/labiol

(Co nie interpretuje lewy apostrof ??)

Historia poleceń jest zapisywana w pliku okreœlonym zmiennš HISTFILE. Domyœlnie jest to plik ~/.bash_history. Dodatkowo za pomocš HISTFILESIZE, HISTSIZE okreœla się liczbę wpisów zapamiętywanych w każdej sesji, natomiast HISTSIZE.

(gdzie są zapisane wartości tych zmiennych ??; HISTFILE okreœlone jest w /etc/profile – można zmieniać wartoœci w katalogu domowym w pliku .profile)

Ciekawe polecenia:

strings – pokazuje tekst z plików binarnych – na przykład strings /bin/bash

No Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Linux
podcast

All podcast applications I have tested were quite OK(ish) – but I have always struggled with organizing podcasts, creating playlists, etc. It has always been challenging. Therefore, for me, it is more convenient to download podcasts as MP3s and manage them myself (in VLC, for example). There are many ways to do that, but my favorite …

Linux
jellyfin configuration in lxc container

Jellyfin is extremely useful software providing home streaming system. I am using it since a while for streaming my old ripped DVD, which I love to watch again and again. Jellyfin is opensource, cross platform as a server and as a client, including client for android and iOS. It is …

Linux
Various helpful Linux commands for file manipulations

Change file name for all files that contains “[any text]” substring to the same name without that.