Командни промпт:sysadmin@localhost:~$
Корисничко име:sysadmin@localhost:~$
Име система:sysadmin@localhost:~$
Тренутни директоријум:sysadmin@localhost:~$
(user’s home directory /home/sysadmin
)
Команде
Узећемо као пример команду ls
која исписује садржај тренутног директоријума:sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos
Команде могу да имају опције и аргументе:command [options] [arguments]
На пример, аргумент команде ls
може бити директоријум чији садржај желимо да видимо:sysadmin@localhost:~$ ls /etc/ppp
ip-down.d ip-up.d
Команда ls
може да има и више аргумената:sysadmin@localhost:~$ ls /etc/ppp /etc/ssh
/etc/ppp:
ip-down.d ip-up.d
/etc/ssh:
moduli ssh_host_dsa_key.pub ssh_host_rsa_key sshd_config
ssh_config ssh_host_ecdsa_key ssh_host_rsa_key.pub ssh_host_dsa_key
ssh_host_ecdsa_key.pub ssh_import_id
Опција команде ls
може да излиста садржај директоријума са више информација:sysadmin@localhost:~$ ls -l
total 32
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Desktop
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Documents
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Downloads
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Music
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Pictures
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Public
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Templates
drwxr-xr-x 1 sysadmin sysadmin 0 Jan 29 20:13 Videos
Нека друга опција команде ls
може да прикаже садржај директоријума обрнутим редоследом (од Z до A):sysadmin@localhost:~$ ls -r
Videos Templates Public Pictures Music Downloads Documents Desktop
Опције се могу и комбиновати:sysadmin@localhost:~$ ls -lr
total 32
drwxr-xr-x 2 sysadmin sysadmin 4096 Oct 31 20:13 Videos
drwxr-xr-x 2 sysadmin sysadmin 4096 Oct 31 20:13 Templates
drwxr-xr-x 2 sysadmin sysadmin 4096 Oct 31 20:13 Public
drwxr-xr-x 2 sysadmin sysadmin 4096 Oct 31 20:13 Pictures
drwxr-xr-x 2 sysadmin sysadmin 4096 Oct 31 20:13 Music
drwxr-xr-x 2 sysadmin sysadmin 4096 Oct 31 20:13 Downloads
drwxr-xr-x 4 sysadmin sysadmin 4096 Oct 31 20:13 Documents
drwxr-xr-x 2 sysadmin sysadmin 4096 Oct 31 20:13 Desktop
На крају, опције и аргументи се могу комбиновати:sysadmin@localhost:~$ ls -l /usr/bin/perl
-rwxr-xr-x 2 root root 10376 Feb 4 2018 /usr/bin/perl
Све извршене команде чувају се у “историји” и могу се излистати једна по једна притиском на тастер ↑
, или исписати све извршавањем команде history
.
Променљиве
Као и у програмским језицима, у шелу могу да се користе променљиве. Локалне (шел) променљиве користе се само у активном шелу. Задају се у формату variable=value
и позивају са $variable
. На пример:sysadmin@localhost:~$ direktorijum=/etc/ppp
sysadmin@localhost:~$ ls $direktorijum
ip-down.d ip-up.d
Постоје и глобалне променљиве (променљиве окружења) које се користе на нивоу оперативног система, попут PATH
, HOME
итд. Списак глобалних променљивих добија се извршавањем команде env
. Ако желите да експортујете локалну променљиву на глобални ниво унесите команду у формату export variable
. На пример:sysadmin@localhost:~$ export direktorijum=/etc/ppp
Једна од битних глобалних променљивих је променљива PATH
. У њој се налази списак директоријума који се претражују приликом уноса команди. Ако се команда налази у директоријуму који није на том списку онда неће бити пронађена – јавиће се грешка command not found
. Уносом команде echo $PATH
можемо видети комплетан списак директоријума раздвојених двотачком. Ако желите да додате неки директоријум у променљуву PATH
, нпр. /usr/bin/custom
, па потом проверите да ли је додат, унесите следећу команду:sysadmin@localhost:~$ PATH=/usr/bin/custom:$PATH
sysadmin@localhost:~$ echo $PATH
/usr/bin/custom:/home/sysadmin/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Функције
Bash подржава и рад са функцијама у формату:function_name ()
{
commands
}
На пример:
my_report () {
ls Documents
date
echo "Document directory report"
}
Позивом ове функције исписаће се следеће:
radlovacki@MAINFRAME:/mnt/c/Users/velim$ my_report
cache GitHub 'My Music' 'Scanned Documents' 'Visual Studio 2019'
'Custom Office Templates' IISExpress 'My Pictures' 'Sound recordings' 'Visual Studio 2022'
Default.rdp JDownloader 'My Videos' 'SQL Server Management Studio' WindowsPowerShell
desktop.ini 'My Data Sources' 'My Web Sites' ViberDownloads Zoom
Epubsoft 'My Digital Editions' 'Outlook Files' 'Visual Studio 2017'
Mon 07 Nov 2022 08:43:38 PM CET
Document directory report
Специјални карактери
Неки од важних специјалних карактера су:'израз'
апострофи спречавају извршавање свих карактера и команди у изразу"израз"
наводници спречавају извршавање карактера * ? [ ]
у изразу, али дозвољавају извршавање команди у изразу\израз
спречава извршавање првог карактера у извразу`израз`
дозвољава извршавање команде унутар команде, нпр. echo Danas je `date`
command1; command2; command3
дозвољава извршавање команди редом како су написанеcommand1 && command2
ако је прва команда успешна онда ће се извршити и друга, а ако није онда неће (логичко И)command1 || command2
ако је прва команда неуспешна онда ће се извршити друга (логичко ИЛИ)