Wczoraj tłumaczyłem jak zautomatyzować logowanie się na server FTP za pomocą pliku .netrc
. Dzisiaj postaram się wytłumaczyć jak stworzyć prosty skrypt, który będzie coś za nas robił, bez konieczności ręcznego wpisywania komend. Tego typu skrypty najbardziej przydają się w sytuacjach, w których wykonujemy powtarzające się czynności — czy to raz na godzinę, czy raz dziennie. W moim przypadku, walczę ostatnio z błędami generowanymi przez server, więc potrzebuję na bieżąco mieć najnowszy error log.
Skrypt
Najpierw tworzymy plik, w którym umieścimy nasze komendy:
touch pullerrorlog.sh
Następnie nadajemy mu prawa do uruchamiania:
chmod +x pullerrorlog.sh
Pozostaje teraz podać dokładnie co chcemy, aby dany skrypt robił (gdzie xxx.xxx.xxx.xxx to adres naszego servera FTP):
pico pullerrorlog.sh
#!/bin/bash
ftp -d xxx.xxx.xxx.xxx << ftpEOF
prompt
bin
lcd ~/Desktop
get error_log
quit
ftpEOF
Ta seria komend nie robi nic innego jak loguje się na wybrany server, zmienia lokalny katalog na Biurko, następnie pobiera plik o nazwie error_log i zamyka FTP. Aby go teraz uruchomić, wystarczy w terminalu wpisać:
./pullerrorlog.sh
Jak zapewne domyślacie się, skrypty mogą robić znacznie więcej — miłego eksperymentowania!
Chcesz zwrócić mi na coś uwagę lub skomentować? Zapraszam na @morid1n lub na forum.