Polecenia systemu operacyjnego Unix: Różnice pomiędzy wersjami

Z Wikipedii, wolnej encyklopedii
[wersja nieprzejrzana][wersja nieprzejrzana]
Usunięta treść Dodana treść
Linia 82: Linia 82:
* < - przekierowanie do standardowego wejścia, np. '''`cat < /proc/cpuinfo`''', jednak w efekcie to to samo co '''`cat /proc/cpuinfo`''' (w pierwszym przypadku dane wejściowe to plik skierowany na standardowe wejście, w drugim parametr przekazywany do programu, który znajduje, otwiera i czyta plik)
* < - przekierowanie do standardowego wejścia, np. '''`cat < /proc/cpuinfo`''', jednak w efekcie to to samo co '''`cat /proc/cpuinfo`''' (w pierwszym przypadku dane wejściowe to plik skierowany na standardowe wejście, w drugim parametr przekazywany do programu, który znajduje, otwiera i czyta plik)
* | - skierowanie standardowego wyjścia do potoku, który obsłuży program trzeci, np. '''`cat /etc/hosts | grep "192.168.0." | awk {print $1}`'''
* | - skierowanie standardowego wyjścia do potoku, który obsłuży program trzeci, np. '''`cat /etc/hosts | grep "192.168.0." | awk {print $1}`'''
* `komenda` - wykonanie polecenie bashowego w trakcie wykonywania poprzedniego polecenia, np. '''`echo -en "\033[1;31mInformacje o procesorze:\033[1;0m\n`cat < /proc/cpuinfo`\n"`''' - należy zwrócić uwagę na operator "`", przerywa on na chwilę działanie skryptu, wykonuje polecenie `cat` i kieruje standardowe wejście w miejsce operatorów ``. Parametry programu echo - \033[y;xxm ustawiają kolory - y to kolor tła, x to kolor napisów.
* `komenda` - wykonanie polecenie bashowego w trakcie wykonywania poprzedniego polecenia, np. '''`clear && echo -en "\033[1;31mInformacje o procesorze:\033[1;0m\n`cat < /proc/cpuinfo`\n"`''' - należy zwrócić uwagę na operator "`", przerywa on na chwilę działanie skryptu, wykonuje polecenie `cat` i kieruje standardowe wyjście w miejsce operatorów ``. Parametry programu echo - \033[y;xxm ustawiają kolory - y to kolor tła, x to kolor napisów.


==Przykłady łączenia kilku poleceń==
==Przykłady łączenia kilku poleceń==

Wersja z 12:33, 5 mar 2007

W systemach Uniksowych, oraz w systemach uniksopodobnych polecenia są często programami konsolowymi, uruchamianymi w wierszu poleceń - inaczej w jednej z powłok systemowych. Część z nich to jednak wbudowane polecenia powłoki, to w jakiej postaci występuje dane polecenia zalezy od wersjii systemu. Podstawową powłoką tych systemów jest sh, jednak częściej używa się bardziej rozbudowanych wywodzących się z niej powłok, takich jak bash, ksh, csh, czy zsh. Powłoki te mogą być także używane jako języki skryptowe, co pozwala użytkownikowi na wykonywanie rozbudowanych poleceń wykorzystujących wiele programów, oraz pisanie skryptów automatyzujących często wykonywane czynności. Za pomocą mechanizmów potoków i kolejek (fifo) można w łatwy sposób przekazywać dane pomiędzy wieloma programami tworząc z nich bardziej skomplikowane narzędzia.

Zestaw najważniejszych poleceń

Zarządzanie plikami i systemem plików

  • cat – wypisywanie i łączenie plików
  • chattr – ustawianie dodatkowych atrybutów dla systemów plików ext2/ext3
  • chgrp – zmiana grupy pliku
  • chmod – zmiana praw dostępu do pliku
  • chown – zmiana właściciela/grupy pliku
  • cd – zmiana bieżącego katalogu, użyty bez argumentów powraca do katalogu domowego
  • cp – kopiowanie plików
  • df – wypisywanie wolnej przestrzeni zamontowanych systemów plików
  • du – wyświetla ilość miejsca zajmowanego przez pliki/katalogi
  • file - ustalanie typu danych zawartych w pliku
  • find – przeszukiwanie systemu plików
  • fsck - sprawdzanie integralności systemu plików
  • getfacl – odczytuje prawa dostępu z list ACL
  • ln – tworzenie dowiązań twardych i symbolicznych (patrz niżej)
  • lndir - tworzenie dowiązań do wszystkich plików w katalogu
  • ls – listowanie zawartości katalogu
  • lsof - wyświetlanie listy otwartych plików, oraz używających ich programów
  • mkdir – tworzenie katalogów
  • mkfifo - tworzenie kolejek
  • mount – montowanie urządzeń/zasobów w systemie plików (patrz niżej)
  • mv – przenoszenie/zmiana nazwy pliku
  • pwd – wydruk aktualnego katalogu
  • rcp -transfer plików na zdalny host
  • rm – usuwanie plików
  • rmdir – usuwanie katalogów
  • scp - transfer plików bezpiecznym kanałem, SSH, na zdalny host
  • setfacl – ustawia prawa dostępu list ACL
  • split - dzielenie pliku na kawałki
  • touch - zmaiana daty ostatniej modyfikacjii, lub dostępu do pliku bądź utworzenie pustego pliku
  • umount – odmontowanie zasobu z systemu plików (patrz mount)

Zarządzanie procesami

  • anacron - wykonanie polecenia raz na jakiś czas
  • at - jednorazowe wykonywanie polecenia w określonym czasie
  • chroot - uruchomienie programu ze zmienionym katalogiem głównym
  • cron - regularne uruchamianie programów w określonym czasie
  • fg – przeniesienie procesu uruchomionego w tle na pierwszy plan
  • kill – przekazanie sygnału do procesu (domyślnie usunięcie wskazanego procesu)
  • killall - zakończenie wykonywania wszystkich procesów o podanej nazwie
  • ps – pobieranie informacji o aktywnych procesach
  • top – wyświetla najważniejsze procesy
  • watch - monitorowanie wyniku polecenia

Zarządzanie użytkownikami i systemem

  • halt – zatrzymywanie systemu
  • passwd – zmiana hasła
  • su – logowanie na konto innego użytkownika (patrz niżej)
  • sudo – uruchomienia aplikacji z uprawnieniami root
  • useradd, lub adduser - dodaje nowego użytkownika
  • w – podobnie jak who, jednak zawiera więcej informacji
  • who – wypisanie listy zalogowanych użytkowników wraz z dodatkowymi informacjami o nich
  • whoami – pokazuje bieżący efektywny uid, czyli identyfikator użytkownika, z którego prawami działamy

Przetwarzanie tekstu

  • grep – wypisywanie linii pasujących do wzorca
  • head - wypisanie pierwszych 10 linijek tekstu
  • more – rozwinięcie o sterowanie strumieniem
  • tail – wypisanie ostatnich 10 linijek tekstu, także używane w diagnostyce (patrz niżej)
  • tee – wypisywanie danych wejściowych na standardowe wyjście i do dowolnej liczby plików
  • vi – edycja plików tekstowych

Programowanie shellowe

  • echo – druk na standardowe wyjście
  • printf - bardziej rozbudowane polecenie drukujące na standardowe wyjście.
  • test - sprawdzanie typów plików i porównywanie wartości

Inne

Operatory (bash)

  • && - wykonaj jeśli poprzednie polecenie zakończylo się sukcesem, np. `./configure && make bzImage`
  • ; - bezwzględne wykonanie, np. `clear ; echo -e "Fajnie!"`
  • > - przekierowanie standardowego wyjścia (czyli to co program wypisze w konsoli) do pliku, np. `cat /proc/cpuinfo > ~/cpuinfo.txt`
  • < - przekierowanie do standardowego wejścia, np. `cat < /proc/cpuinfo`, jednak w efekcie to to samo co `cat /proc/cpuinfo` (w pierwszym przypadku dane wejściowe to plik skierowany na standardowe wejście, w drugim parametr przekazywany do programu, który znajduje, otwiera i czyta plik)
  • | - skierowanie standardowego wyjścia do potoku, który obsłuży program trzeci, np. `cat /etc/hosts | grep "192.168.0." | awk {print $1}`
  • `komenda` - wykonanie polecenie bashowego w trakcie wykonywania poprzedniego polecenia, np. `clear && echo -en "\033[1;31mInformacje o procesorze:\033[1;0m\n`cat < /proc/cpuinfo`\n"` - należy zwrócić uwagę na operator "`", przerywa on na chwilę działanie skryptu, wykonuje polecenie `cat` i kieruje standardowe wyjście w miejsce operatorów ``. Parametry programu echo - \033[y;xxm ustawiają kolory - y to kolor tła, x to kolor napisów.

Przykłady łączenia kilku poleceń

  • $ su -c "mount -t smbfs //inny_komputer/share /mnt/net_share; cp -r /mnt/net_share /home/uzytkownik/dane; chown uzytkownik:users -r /home/uzytkownik/dane; umount /mnt/net_share" – Podane polecenie skopiuje zawartość udostępnionych zasobów z inny_komputer, nada im odpowiednie prawa dostępu i potem odmontuje zasoby sieciowe. Wszystko jest wykonywane z poziomu roota, gdyż domyślnie tylko on może montować partycje i zasoby innych komputerów.

Zobacz też

Linki zewnętrzne