Bash – zamiast dużej ilości echo

Każdy skrypt potrzebuje jakieś funkcji opisującej  działanie skryptu. Przeważnie umieszczamy w niej dużo echo aby wyświetlić linie z informacjami. Jest jednak inna możliwość, użycie cat i EOF (albo innego znacznika, ważne ze określa początek i koniec tekstu, zwyczajowo jest to EOF – End Of File). Przykład:

function usage() {

cat << EOF
usage: $0 options

description of option 1 - default: $DEFAULT1
It is nice way to create easy long description...

EOF
}

Bash: liczby losowe

W zmiennej RANDOM Bash trzyma zmienną z zakresu 0-32767:

$echo $RANDOM
17152
$ echo $RANDOM
15361

Jeżeli chcemy uzyskać wartość z  zakresu 0 jakaś liczba, np. 100, musimy zastosować drobne sztuczki:

$ let R=$RANDOM%100; echo $R
90
$ let R=$RANDOM%100; echo $R
16

Jeżeli natomiast chcemy liczbę z zakresu np. 20 – 120 musimy wylosować liczbę z z zakresu 0-100 i dodać do niej dolną granicę czyli 20:

$ let R=$RANDOM%100+20; echo $R
98
$ let R=$RANDOM%100+20; echo $R
117

Linux – Bash – skryptowanie w linii poleceń – cz 1.

Myślałem że coś tam wiem o używaniu Basha, niestety (a raczej stety 😉 ), przyjaciel z pracy  pokazał mi dzisiaj jak mało umiem ;). Problem do rozwiązania był prosty: należało sprawdzić adresy IP 20 serwerów. Stwierdziłem, że pisanie skryptu zajmie więcej czasu niż ręczne sprawdzenie ich przy pomocy komendy 'host’. Cóż, rozwiązanie okazało się proste.

Czytaj dalej Linux – Bash – skryptowanie w linii poleceń – cz 1.

SVN: dostęp do zewnętrznych repozytoriów przez WWW a przez ssh

Uruchomiłem sobie dla mojej witryny svn-a oraz postanowiłem przerzucić sie z testowania wszystkiego na lokalnym WWW (lapek) na domenę zewnętrzną. Skonfigurowałem sobie skrypt do automatycznego kopiowania danych z svn-a do poddomeny i pojawił się problem. Otóż o ile pobieranie danych z zewnętrznego svn-a (z moim własnym, małym frameworkiem bazodanowym) przez ssh na własnym lapku jest proste, to korzystanie z zewnętrznego skryptu na hostingu może być problematyczne. Musiałem udostępnić anonimowy dostęp przez WWW.

Zapamiętać: ssh nadaje się na synchronizację na domowe komputery, należy jednak udostępniać dla niektórych projektów anonimowe dostępy przez WWW…

SVN: Automatyczne wprowadzane zmian na WWW

Coraz bradziej się cieszę, ze zmiany hostingu. Nowy hosting umożliwia mi automatyczne publikowanie zmian wprowadzonych do repozytorium svn. Działa to prosto: wprowadzam poprawki do repozytorium, a skrypt hostingu (po odpowiednim, acz banalnym konfigurowaniu) automatycznie robi commit na katalog serwisu WWW. Dzięki temu nie muszę wykonywać ręcznego kopiowania kodu strony. Jednen ruch mniej myszką a jak cieszy (albo jeden skrypt mniej…).

Jeżeli ktoś chciałby wykupić hosting może także wspomóc mnie 😉 Link do mojego konta w programie partnerskim.