Programowanie w systemie UNIX/Konsola

Definicje

edytuj

Czym jest :[1][2]

  • powłoka: program interpretujący polecenia;
  • terminal: urządzenie pozwalające człowiekowi na pracę z komputerem, teraz ekran i klawiatura;
  • konsola: wiersz poleceń (sposób komunikacji człowieka z komputerem).

Słowa kluczowe:

  • shell
  • console
  • terminl
  • tty
  • pty
  • pts

Dostęp [3]

Pierwsza sesja

edytuj

Otwieramy virtualny terminal, czyli emulator terminala (Gnome terminal emuluje xterm):

Wpisujemy:

echo $SHELL

Jeżeli otrzymamy:

/bin/bash

oznacza to, że pracujemy z powłoką BASH.

Możemy sprawdzić jakie inne powłoki są zainstalowane:

less /etc/shells

Otrzymamy listę:


# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash


Nie oznacza to, że mamy tyle powłok. Widać, że nie ma tu dwóch ciekawych powłok fish i zsh [4]

Polecenia

edytuj

lista dla Ubuntu

Skróty klawiszowe

edytuj

Skróty klawiszowe ułatwiają i przyspieszają pracę. Wart znać kilka najczęściej używanych [5][6][7] dotyczących np. procesów[8]. Zobacz również: Wyciek pamięci[9]



Polecenia, skróty i ich opis
polecenie skrót opis
Tab-Tab autouzupełnianie komend
SIGINT Ctrl-c kończy program (proces)
SIGTSTP Ctrl-z wstrzymuje program ( wysyła do tła ( ang. background). Program pozostaje w pamięci !
clear Ctrl-l czyści konsolę
ArrowUp ostatnia/poprzednia komenda
chvt 1 Ctrl-Alt-F1 przełącza z trybu graficznego do pierwszej konsoli (tty1). Jest 6 konsol, Ctrl-Alt-F2 ...[10]
Ctrl-Alt-F7 powrót z konsoli do trybu graficznego
CTL+ALT+t terminal w trybie graficznym (dostęp do linii poleceń, ang. CLI = Command Line Interface)


Listę wszystkich aktualnych skojarzeń możemy uzyskać za pomocą komendy:

bind -p

Zmiana skrótów

edytuj

Polecenie bind zmienia skojarzenie skrótu z poleceniem:

bind -x '"\C-l": clear; ls'

Plik ~/.inputrc

edytuj

Plik inputrc[11] może znajdować się w:

  • katalogu domowym
  • katalogu /etc/ (jeśli nie ma go w domowym)

W pliku tym są zapisane skojarzenia dla biblioteki Readline [12]

Poprzez edycję tego pliku możemy zmienić skojarzenia skrótów:

C-L: clear-screen


Skrót Shift-Tab = tab do tyłu[13]

"\e[Z": "\e-1\C-i"


Plik bashrc

edytuj
# readline variables and bindings
#bind 'set keymap vi'
#bind 'set editing-mode vi'
bind 'set mark-directories on'
bind 'set mark-symlinked-directories on'
bind 'set page-completions off'
bind 'set show-all-if-ambiguous on'
bind 'set visible-stats on'
bind 'set completion-query-items 9001'

[14]

Odnośniki

edytuj
  1. Jaki linux - konsola
  2. What is the exact difference between a 'terminal', a 'shell', a 'tty' and a 'console'?
  3. What's the difference between these ways of accessing the shell?
  4. Linux Magazine pl Bruce Byfield : Wiersz poleceń: Powłoka Z
  5. Ubuntu help : UsingTheTerminal
  6. Linux keyboard shortcuts - 2.0
  7. Linux Shortcuts and Commands
  8. Bash - procesy -14 Lipiec 2008; Piotr Maliński
  9. Wyciek pamięci
  10. Switch to Console mode - Ubuntu Documentation
  11. Readline Init File
  12. Command Line Editing in Bash
  13. Quick Tip: some .inputrc fun by Brett Terpstra
  14. You can make readline (and bash) much more user friendly by adding a few options to ~/.inputrc by metellius