Skip to main content

Bash

Skrypt do zmiany domyślnego interpetera Pythona
·269 words·2 mins
Blog.dsinf.net Bash Linux Python
Python w 2008 roku doczekał się kamienia milowego - wersji 3.0 (Py3K), która jest kompletnie wstecznie-niezgodna z 2.x. Obecnie w użyciu stabilnym jest 3.3. Warty przeczytania dokument znajduje się na oficjlalnej Wiki - http://wiki.python.org/moin/Python2orPython3. Najprościej wskazać różnicę w echo - w 2.7 była to niemal dyrektywa, teraz echo stał się funkcją - stąd: echo "witaj świecie w Pythonie 2.7 - działam bez nawiasów"; echo("witaj świecie w Pythonie 3.0 - potrzebuję nawiasów"); Dwa lata temu deweloperzy Arch Linuxa postanowilicalowicie przejść na v3 (https://www.archlinux.org/news/python-is-now-python-3/). Skutkuje to pewnymi problemami z niekatualizowanymi skryptami. Ponieważ trzymane są obie binarki (python3.3 i python2.7) wszystko można ładnie zorganizować symlinkami.
Uwaga na cron’a!
·241 words·2 mins
Blog.dsinf.net Bash Cron Linux
Cron to jeden z przejawów uporządkowania w Linuksie - przejrzysta struktura crontab, katalogi na zadania daily, hourly itp. Ale jest kilka zawiłości, na które koniecznie trzeba zwrócić uwagę. Po pierwsze bądźmy pewni, że znamy kolejność kolumn: MIN HOUR DAY MONTH WEEKDAY USER COMMAND Najczęstszy błąd to oczywiście odruch użycia 12 54 * * * root cos jako skryptu o 12:54. Ten skrypt uruchomi się 12 minut po pięćdziesiątej czwartej. Kolejna kwestia: niedziela. Ma numer 0, czy 7. Otóż oba. Stąd trzeba uważać bo odruch programisty C++ każe wszystko iterować od zera. Ale jeśli zaczynaliśmy od JavaScriptu to jesteśmy uratowani 😉 (w JS niedziela to 0).
"Choinka" zamiast klasycznego prompta
·1427 words·7 mins
Blog.dsinf.net Bash Linux
W Linuksie defaultowy prompt, czyli znak zachęty, oscyluje wokół czegoś na kształt user @host working_dir # gdzie oczywiście # wskazuje na konto root’a, zamiast niego zwykły użytkownik ma $. Ale czemu prompt ma nie przekazywać innych użytecznych informacji, a przede wszystki przekazywać ich ładnie? Mój prompt na tą godzinę (zmiany są niemal natychmiastowe, ale o tym pod koniec) wygląda tak: Nie to jest ładne, co jest ładne, ale co się komu podoba. Przeanalizujmy jednak taką konfigurację by nauczyć się tworzyć własne. Ale najpierw powiem co jest po kolei bo ciężko się chyba od razu połapać. Kolejno: numer tego polecenia w historii, użytkownik, host, data, stan baterii, temperatura CPU i bieżący katalog. Konfiga pobrać można na dole.
Komenda top i jej batch mode
·151 words·1 min
Blog.dsinf.net Bash Linux
Wśród czeluści parametrów topa można znaleść batch mode, który wg. man’a służy do zapisu do pliku: staje się nieinteraktywny i zrzuca całą swoją zawartość na standardowe wyjście do wystąpienia ^C lub konkretną ilość razy określaną przez parametr -n. Gdyby chcieć zapisać dane deo zmiennej żeby móc wyciągnąć z nich dajmy na to obciążenie procesora wywołamy komedę: top -bn 1 Ale naszym oczom nie ukaże się aktualne obciążenie procesora tylko średnie od rozruchu. Tak samo zachowuje się interaktywny top po starcie: najpierw wartość średnia i dopiero drugie odświeżenie to wartość właściwa. Rozwiązanie problemu przychodzi po chwili zastanowienia. W kodzie parsera (np. Perlowym):