60.19.6. Zabudované proměnné

rcsinfo="$Id: unix.xml,v 1.7 2009-03-07 03:52:40 radek Exp $"

$0
Název spoušteného programu/skriptu. Jedná se o úplný název včetně celé cesty k souboru s právě spuštěným skriptem.
$1 $2${n}
Poziční parametry skriptu/programu či funkce. Prvních devět parametrů je přístupno přes zápis $n i ${n}. Další parametry pak z pochopitelnýc důvodů jen přes ${n}. (Příklad $12 je ${1}2)
$*
Všechny parametry reprezentované jako jeden řetězec. Tedy $1 $2 … ${n}.
$@
Za běžných okolností funguje stejně jako proměnná $*. Její chování se líší je-li oraničena uvozovkami, tedy v zápisu "$@". V tom případě je nahrazena seznamem argumentů "$1" "$2" "$3" … "${n}" narozdíl od proměnné $* jenž je v takovém zápisu nahrazena "$1 $2 $3 … ${n}".
$#
Počet parametrů. Tedy počet parametrů předaných skriptu/programu, nebo počet parametrů předaných do funkce.
$? — exit status variable
Proměnná obsahuje status posledně vykonaného příkazu. Tedy návratovou hodnotu tohoto příkazu/programu/skriptu.
$-
Aktuální příznaky/přepínače zadané při spuštění, nastavené příkazem set nebo implicitní pro bash.
$$ — process id variable
Pid procesu, aktuálně běžícího. V subshelu spuštěném v () vrátí pid volajícího shellu nikoli subshelu. FIXME:ověřit.
$!
Pid posledně spuštěného procesu na pozadí. Tedy posledního příkazu či skupiny příkazů spuštěné asynchronně, t.j. zakončené znakem &.
$_
FIXME:
$BASH
Cesta k samotnému programu bash.
$BASH_ENV
FIXME:
$BASH_VERSINFO[n]

Šestiprvkové pole obsahující informaci o instalované (bežící) versi bashe. Význam jednotlivých prvků pole je následující:

  • BASH_VERSINFO[0] — hlavní (major) číslo verze (RELEASE).
  • BASH_VERSINFO[1] — vedlejší (minor) číslo verze (VERSION).
  • BASH_VERSINFO[2] — verze záplaty (patch level)
  • BASH_VERSINFO[3] — verze sestavení (build level)
  • BASH_VERSINFO[4] — status vypuštění (release status) (např. BETA1)
  • BASH_VERSINFO[5] — hodnota MACHTYPE
$BASH_VERSION

Informace o verzi bashe. Obsah této proměnné je seskládán z prvků pole BASH_VERSINFO

$DIRSTACK
FIXME:
$EDITOR
Implicitní editor volený skripty. Obvykle vi nebo emacs.
$EUID
Efektivní“ id uživatele.
$FUNCNAME

Jméno aktuální funkce.

fce23 ()
{
    echo "Running: $FUNCNAME($*)"
}
$GLOBIGNORE
FIXME:
$GROUPS
Skupiny ke kterým přináleží aktuální uživatel pod nímž skript běží.
$HOME
Domovský adresář uživatele.
$HOSTNAME
Jméno stroje.
$HOSTTYPE
Typ stroje.
$IFS
Oddělovač polí na vstupu.
$IGNOREEOF
FIXME:
$LANG, $LC_COLLATE, $LC_CTYPE, $LC_MESSAGES, $LC_NUMERIC
FIXME:
$LINENO
Číslo řádku skriptu na kterém se tato proměnná nachází.
$MACHTYPE
Typ stroje.
$MAILCHECK
Typ stroje.
$OLDPWD
FIXME:
$OSTYPE

FIXME:

$PATH

FIXME:

$PIPESTATUS

FIXME:

$PPID

FIXME:

$PS1

FIXME:

$RANDOM

Slouží ke generování náhodných čísel. Pokaždé když je tato proměnná použita, je vybráno náhodně číslo z rozsahu 0 až 32767. Zápis do této proměnné inicializuje generátor náhodných čísel.

$SECONDS

Tato proměnná obsahuje počet sekund které uběhly od okamžiku spuštění shellu. Zápis do této proměnné ji nastaví na definovanou hodnotu. Poté zobrazuje počet uběhlých sekund od okamžiku zápisu plus zapsanou hodnotu.

$TIMEFORMAT

FIXME:

$TMOUT

Doba nečinnosti v sekundách po které se bash ukončí.

$UID

Id číslo uživatele. Proměnná je jen pro čtení.