Przejdź do głównej zawartości

Posty

Wyświetlam posty z etykietą bin/bash

Bash w Windows.

Tak to prawda niektórzy mówią, że piekło zamarzło ale będzie można korzystać z bash'a w Windows. Nie chodzi tutaj o rozwiązanie maszyny wirtualnej typu VirtualBox. Systemy plików będą współdzielone więc zwolennicy Linux nie będą musieli przepisywać żadnych skryptów powinny zadziałać tak samo dla plików z zlokalizowanych na partycji NTFS. Działają również takie polecenia jak "cpuinfo" (pokazane w poniższym materiale) gdzie wynikiem działania tego polecenia jest informacja o danym komputerze a nie o wirtualizatorze. Większość interesujących informacji o bash w Windows znajdzie się w materiałach poniżej jakie opublikowane zostały na channel9.msdn.com. O tym. że "Linux w Windows" to nie żarty może też świadczyć fakt Microsoft właśnie przejął szefa Linux z Oracle znanego jako "Mr Linux" doniesienie z zdnet .  Od 13:35 minuty poniższego materiału można już zobaczyć jak działa bash w Windows.

Wyszukiwanie plików względem czasu dostępu, modyfikacji, zmiany. Linux - Bash

Wyszukiwanie plików jak było to już wcześniej przedstawione może odbywać się po określonych kryteriach takich jak nazwa czy rozmiar. Tym razem poszukamy plików dla których kryterium będzie czas. Systemy plików w środowiskach Unix/Linux oferują trzy rodzaje znaczników czasu. Są to czas dostępu ( -atime ) , czas modyfikacji ( -mtime ) oraz czas zmiany ( -ctime ) . Przedstawione w nawiasach przełączniki są opcjami polecenia " find ", które mogą zostać przedstawione w postaci liczb całkowitych oznaczających ilość dni. Przy wartościach dni można używać dodatkowo znaków (  + ) lub ( - ) oznaczających odpowiednio więcej lub mniej niż wartość dni.  CZAS DOSTĘPU DO PLIKÓW Jest to ostatni znacznik czasu określający kiedy plik używany był przez danego użytkownika. Wyszukaj pliki do których uzyskano dostęp w ciągu ostatnich 2 dni.  # find . -type f -atime -2 Wyszukaj pliki do których dostęp uzyskany był dokładnie 2 dni temu. # find . -type f -atime 2 ...

Wyszukiwanie plików względem ich rozmiaru. Linux - Bash

W pracy administratora często zdarza się potrzeba wyszukania jakiegoś pliku wiedząc jedynie ile może on zajmować przestrzeni dyskowej lub też chcemy znaleźć pliki większe lub mniejsze niż określony rozmiar. Przydaje się to szczególnie w przypadku plików z logami itp. W tym przykładzie posłużymy się poleceniem "find" w raz z odpowiednimi przełącznikami. Wcześniej przygotowane zostaną pliki o określonych rozmiarach w katalogu /tmp/test. Następnie do określania rozmiarów posłużymy się poleceniem "du" wraz z odpowiednimi przełącznikami sortującymi wyniki.  Krok 1 - Przygotowanie plików  # cd /tmp  # mkdir test # cd test dd if=/dev/zero of=test.data1M bs=1M count=1 dd if=/dev/zero of=test.data2k bs=2k count=1 dd if=/dev/zero of=test.data200k bs=200k count=1 dd if=/dev/zero of=test.data5M bs=5M count=1 dd if=/dev/zero of=test.data20k bs=20k count=1 dd if=/dev/zero of=test.data80k bs=80k count=1 dd if=/dev/zero of=test.data1k bs=...

Jak obliczyć ile miejsca zajmują wybrane pliki w danym katalogu w Linux - Bash.

Administrując systemami operacyjnymi, gdzie zainstalowane są różne aplikacje wcześniej czy później zachodzi potrzeba uporządkowania logów. Dobrze też mieć możliwość dowiedzieć się ile miejsca dane logi zajmują. Nie muszą to być tylko pliki logów ale również dowolne inne pliki i chcemy poznać ile te dane pliki w danym katalogu lub charakteryzujące się daną nazwą w sumie zajmują miejsca. Mogą to być logi z danego dnia lub też pliki o danym rozszerzeniu. Co będzie potrzebne wy zdobyć takie informacje ? Polecenie listujące pliki wraz z ich rozmiarem oraz możliwość wycięcia i zsumowania kolumny dotyczącej jedynie rozmiaru czyli np.: awk.  Występującym tu problemem jest konwersja jednostek zastosowana w różnych narzędziach. Różnicę widać gdy stosujemy " ls " i " du ".  Krok 1 - Na potrzeby przetestowania sumowania rozmiarów plików utwórzmy testowy katalog /test a w nim 5 plików o różnych rozmiarach.  # mkdir /tmp/test  # cd /tmp/test # dd  if=...

Linux - Bash - Wyszukanie wszystkich aktywnych hostów w sieci - skrypt

Automatyzacja zadań przy pomocy skryptów bash jest nieoceniona w przypadku gdy trzeba cyklicznie wykonać jakieś polecenie. Przykład takiego zadania to wyszukanie wszystkich aktywnych hostów w sieci przy użyciu polecenia ping (oraz narzędzia fping). W tym przykładzie zakładamy, że host może być nieaktywny w dwóch przypadkach - brak zasilania, - kłopoty z siecią. Więcej szczegółowych informacji o narzędziu ping znajduję się na stronach wilipedii. PING . Skrypt wyszukujący wszystkie aktywne hosty w podanej sieci #!/bin/bash for ip in 192.168.0.{1..255}; do                  ping $ip -c 2 &> /dev/null;         if [ $? -eq 0 ];                 then                         echo $ip jest aktywny         fi         )         done...

Skrypty Bash - Porównania i testy

Kontrolą przepływu w przypadku bash zajmują się funkcję znane doskonale z innych języków programowania. Funkcję tę umożliwiają sprawdzić i porównać warunki na podstawie których podejmowana jest dalej decyzja co zostanie zrobione. Opcje te zgodne są z istniejącymi funkcjami systemów UNIX. Mowa tu o instrukcjach if, if else , oraz operatorach logicznych stosowanych do wykonania testów. Określone operatory mogą posłużyć do porównania elementów danych. W repertuarze dostępne jest również polecenie "test" do przeprowadzania testów. Znajomość tych rozwiązań może pomóc w tworzeniu lepszych i bardziej zaawansowanych narzędzi działających w powłoce Linux.  WARUNEK INSTRUKCJI IF. if warunek ; then       polecenia; fi WARUNEK INSTRUKCJI ELSE IF ELSE if warunek; then       polecenia; elif warunek; then        polecenia else       polecenia fi  W przypadku instrukcji if oraz else można zagnieżdżać i...

Skrypty Bash - operacje matematyczne

Operacje matematyczne to podstawowy element wymagany w przypadku każdego języka programowania i powłoka bash również oferuje takie możliwości. Środowisko powłoki Bash umożliwia wykonywanie podstawowych działań matematycznych stosując polecenie "let" oraz operatory (( )) i [ ] . Do bardziej zaawansowanych obliczeń możemy wykorzystać programy "expr" i "bc". Więcej informacji o programie bc możemy znaleźć pod adresem :  http://oprogramowania-nauka.eshost.info/bc-unix.htm . Poniżej omówienie możliwości wykonywania obliczeń w powłoce systemu Linux.  Aby wykonać działanie arytmetyczne wykorzystujemy polecenie " let ". Przykładowo chcąc dodać dwie liczby możemy wykonać polecenie :  let result=123+4; echo $result Wynikiem działania takiego polecenia będzie suma liczb czyli 127. Dodawanie takie możemy zapisać w postaci pliku wykonywalnego jaki można zobaczyć poniżej. Aby skrypt miał nieco sprawniejsze działanie umożliwimy użytkownikom ...

Skrypty bash - podstawowe informacje

Podstawowym celem tego wpisu jest zaprezentowanie przeglądu środowiska powłoki i zapoznanie się z podstawowymi funkcjami. Polecenia są wpisywane w terminalu powłoki. Po uruchomieniu okna terminalu (terminal w systemach Linux lub putty w Windows) dostępny jest wiersz poleceń. Zazwyczaj ma on format w postaci :   nazwa_użytkownika@nazwa_hosta$ root@nazwa_hosta#  albo też po prostu znak $ lub # .  Znak $ reprezentuję zwykłych użytkowników, a znak # - administratora root. W systemach Linux użytkownik root posiada największe możliwości administracji i zarządzania systemem. MAGICZNY CIĄG POCZĄTKOWY Skrypt powłoki jest to plik tekstowy jaki zaczyna się ciągiem :  #!/bin/bash W przypadku dowolnego języka skryptowego w systemach Linux skrypt zaczyna się od specjalnego wiersza jaki nazywany jest wierszem magicznego ciągu. Wiersz ten wskazuje na ścieżkę interpretera w tym przypadku jest to /bin/bash poprzedzoną ciągiem #! .  URU...