find & grep

Find ‘text to find‘ in *.xml files case-insensitive Method 1: grep -ir –include \*.xml ‘text to find’grep -ir –include \*.xml ‘text to find’ Method 2: find -name ‘*.xml’ -exec grep -i ‘text to find’ {} \;find -name ‘*.xml’ -exec grep -i ‘text to find’ {} \;

Linux: /bin/sh^M: bad interpreter

Przy edycji skryptów basha/pythona np. w Eclipse pod systemem Windows i późniejszym przenoszeniu ich na Linuxa zdarza się, że mimo że na dobrą sprawę np. w Vim nie widać windowsowego znaku ^M (enter) w pliku, to przy próbie uruchomienia tekiego skryptu jakimś trafem dostajemy komunikat typu: /bin/sh^M: bad interpreter: No such file or directory /usr/bin/python^M: Read more about Linux: /bin/sh^M: bad interpreter[…]

23HQ.com – skrypty do uploadu zdjęć z poziomu konsoli

23_getfrob – do pobierania frob’a. Froba należy zwalidować przez www. 1 2 3 #!/bin/sh curl -F api_key=DEMO -F method=auth.getFrob http://www.23hq.com/services/rest/ echo "validate: http://www.23hq.com/services/auth/?api_key=DEMO&frob=…";#!/bin/sh curl -F api_key=DEMO -F method=auth.getFrob http://www.23hq.com/services/rest/ echo "validate: http://www.23hq.com/services/auth/?api_key=DEMO&frob=…"; 23_gettoken – do pobierania tokena. 1 2 3 4 5 6 #!/bin/sh if [ -z $1 ]; then echo "usage: 23_gettoken [FROB]"; else Read more about 23HQ.com – skrypty do uploadu zdjęć z poziomu konsoli[…]

Linux shell: pomiar czasu wykonania

Przykładowo chcemy sprawdzić jaki program szybciej zwróci rozdzielczość obrazka JPEG. Wystarczy w tym celu użyć polecenia time: $ time jpeginfo image.jpg img_9006.jpg 2272 x 1704 24bit Exif N 693030 real 0m0.003s user 0m0.000s sys 0m0.000s $ time identify -ping image.jpg img_9006.jpg JPEG 2272×1704 DirectClass 677kb real 0m0.030s user 0m0.010s sys 0m0.020s Jak widać szybszy jest Read more about Linux shell: pomiar czasu wykonania[…]

Linux shell: Kopia stdout do pliku

Pytanie: Jak przekierować stdout dodatkowo do pliku (wyświetlać normalnie i przekierować również do pliku) Odpowiedź: tee przykład: $ ls | tee plik zostanie wylistowana zawartość katalogu i przekierowana do pliku plik z manula tee: tee – czyta ze standardowego wejścia i przesyła kopię na standardowe wyjście oraz do pliku

Linux shell: Operacje arytmetyczne w bash

Do obliczeń wykorzystujemy konsolowy kalkulator dc Mnożenie 10.76 * 20.1 $ echo -e “6\nk\n10.76\n20.1\n*\np” | dc Dzielenie 10.76 / 20.1 $ echo -e “6\nk\n10.76\n20.1\n/\np” | dc Dodawanie 10.76 + 20.1 $ echo -e “6\nk\n10.76\n20.1\n+\np” | dc Odejmowanie 10.76 – 20.1 $ echo -e “6\nk\n10.76\n20.1\n-\np” | dc 6 w powyższych przykładach oznacza precyzje obliczeń.