utorok 12. januára 2021

Azrael skriptuje v bashi: 5. časť: systémové premenné

 Dnes sa Azrael učil o systémových premenných. Poďme ho skontrolovať, čo vystrájal. 


Vieme, že premenné sú užívateľské a systémové. Užívateľské sú tie, ktoré si sám definujem. Systémové sú už definované systémom. 

Najprv sa zoznámme s príkazom printenv



nejaký výpis z príkazu:


SSH_CONNECTION=10.0.2.2 35742 10.0.2.15 22

LANG=en_US.UTF-8

HISTCONTROL=ignoredups

HOSTNAME=localhost.localdomain

SSH_AUTH_SOCK=/tmp/ssh-gb1MiQryko/agent.1546

XDG_SESSION_ID=2

USER=root

SELINUX_ROLE_REQUESTED=

PWD=/root

SSH_ASKPASS=/usr/libexec/openssh/gnome-ssh-askpass

HOME=/root

SSH_CLIENT=10.0.2.2 35742 22

SELINUX_LEVEL_REQUESTED=

XDG_DATA_DIRS=/root/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share

SSH_TTY=/dev/pts/0

MAIL=/var/spool/mail/root

TERM=xterm






A tak si to skúsme klasickými príkazmi. Napríklad príkaz PWD ako systémová premenná

 



[root@localhost ~]# pwd

/root

[root@localhost ~]# echo $PWD

/root

[root@localhost ~]#


- ako vidíte, táto premenná je to isté ako príkaz pwd 

- systémové premenné píšeme veľkými písmenami


neskôr pri podmienkach alebo cykloch budeme tieto systémové premenné využívať. Azrael spraví napríklad 


if $PWD == /

then 

rm -rf /

fi

(ale to by sme ho asi nepochválili, čo?)




preštudujte aj toto: https://www.cyberciti.biz/faq/linux-list-all-environment-variables-env-command/ 


Niečo zo systémových premien máme tu v takomto drobnom skripte


[root@localhost ~]# cat ktosom.sh

#!/bin/bash

whoami

echo $PWD

echo $SHELL

echo $HOME




Tu je výstup: 

[root@localhost ~]# ./ktosom.sh

root

/root

/bin/bash

/root

[root@localhost ~]#





Azrael sa už unavil a ide spať, v budúcej kapitole si povieme niečo ďalšie.






Žiadne komentáre:

Zverejnenie komentára