Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



23.06.2020

PLNOG Online

PLNOG Online
23.06.2020

Nowe zagrożenie

Ramsay
23.06.2020

Chmurowe kopie

Veeam Backup dla Microsoft Azure
19.06.2020

Nowości w kontenerach

Red Hat OpenShift 4.4
19.06.2020

Analityka bezpieczeństwa

FortiAI
19.06.2020

UPS dla obliczeń edge

Schneider APC Smart-UPS
16.06.2020

Przemysłowe SD

Nowe karty Transcend
16.06.2020

Storage dla SMB

QNAP TS-451DeU
16.06.2020

Pamięć masowa

Dell EMC PowerStore

Skrypty powłoki GNU/LINUX

Data publikacji: 02-03-2015 Autor: Grzegorz Kuczyński

Nie ma zadania, którego nie da się wykonać za pomocą powłoki systemowej Linuksa. Za to są takie, których nie można zrealizować przy użyciu GUI. Dobra znajomość możliwości powłoki jest podstawowym wymogiem stawianym wielu administratorom, a umiejętność tworzenia skryptów znacznie zwiększa produktywność działania.

Administratorzy, aby rozwiązać dany problem, sięgają nieraz po wyrafinowane narzędzia, podczas gdy wiele z realizowanych zagadnień to typowe zadania dla skryptów powłoki. Powłokę systemu GNU/Linux należy traktować jako interaktywne i programowalne środowisko, mające określone obszary działania. Tak jak PHP przeznaczony jest przede wszystkim do tworzenia elementów używanych na stronach WWW, tak samo skrypty powłoki służą do automatyzacji zadań systemowych i korzystania z kolekcji narzędzi dostarczanych wraz z Linuksem.

W pierwszym odcinku cyklu opisane zostały podstawy korzystania z powłoki Bash, argumentów skryptu, zmiennych powłoki, specjalnych parametrów i wyrażeń logicznych. W niniejszym artykule kontynuujemy opis podstaw programowania i przedstawiamy kolejne przykłady zastosowań tego typu skryptów.

> PORÓWNYWANIE NAPISÓW

Bash oferuje duże możliwości operowania na napisach. Przyjrzyjmy się niektórym z nich, aby zaprezentować, jak używać instrukcji if:

$ cat script7.sh
#!/bin/bash
STR1="GNU/Linux" ; STR2="Linux"
STR3="BASH" ; STR4=""
if [ "$STR1" = "$STR1" ]; then
echo -e Ciągi '$STR1' i '$STR1' są takie same
fi
if [ "$STR1" != "$STR2" ]; then
echo -e Ciągi '$STR1' i '$STR2' są różne
fi
if [ -z "$STR4" ]; then
echo -e Ciąg '$STR4' jest pusty
fi
if [[ "$STR1" =~ "$STR2" ]]; then
echo -e Ciąg '$STR1' zawiera podciąg '$STR2'
fi
if [[ "$STR3" =~ [Bb][Aa][Ss][Hh] ]]; then
echo Ciąg '$STR3' zawiera nazwę Bash
fi
$ ./script7.sh

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"