English Русский 中文 Castellano 日本語 Português do Brasil Magyar Srpski

This page was kindly translated by Dariusz Polański

Ten spis zawiera polecenia wykonywane z linii komend w Linuksie, które są użyteczne w codziennej pracy.
Przykłady zaznaczone gwiazdką są poprawne/bezpiecznie, zatem można je od razu wykonać w terminalu.
Jeśli chcesz możesz je równocześnie czytać i wklejać je w oknie linii komend aby zobaczyć ich działanie.
Wszystkie komendy zostały przetestowane zarówno na Fedora i jaki Ubuntu.

KomendaOpis
apropos whatisPokazuje komendy odpowiadające danemu wyrazowi. Zobacz też threadsafe
man -t man | ps2pdf - > man.pdfTworzy dokument .pdf z podręcznika man
 which commandPokazuje pełną ścieżkę dla komendy
 time commandPokazuje czas trwania komendy
time catUruchamia stoper. Nacisnięcie CTRL-d przerywa wykonywanie. Zobacz też sw
nice infoUruchamia komendę z niższym priorytetem (W tym wypadku czytnik “info”)
renice 19 -p $$Uruchamia shell (skrypt) z niższym priorytetem. Używane przy automatycznych zadaniach
Katalogi
cd -Wraca do poprzedniego katalogu
cdPrzechodzi do katalogu $HOME
 (cd dir && command)Przechodzi do katalogu, wykonuje komendę i wraca z powrotem
pushd .Put current dir on stack so you can popd back to it
alias l='ls -l --color=auto'Pokazuje zawartość katalogu
ls -lrtPokazuje zawartość katalogu według daty. Zobacz też newest oraz find_mm_yyyy
ls /usr/bin | pr -T9 -W$COLUMNSPokazuje zawartość katalogu w dziewięciu kolumnach
 find -name '*.[ch]' | xargs grep -E 'expr'Szuka wyrazu 'expr' w obecnym katalogu i poniżej. Zobacz też findrepo
 find -type f -print0 | xargs -r0 grep -F 'example'Szuka danego wyrazu tylko w nazwie pliku w obecnym katalogu i poniżej
 find -maxdepth 1 -type f | xargs grep -F 'example'Szuka danego wyrazu tylko w nazwie pliku w obecnym katalogu
 find -maxdepth 1 -type d | while read dir; do echo $dir; echo cmd2; doneWykonuje (w pętli) wiele komend dla każdego znalezionego wiersza
find -type f ! -perm -444Znajduje pliki nie mogące zostać odczytane przez nikogo (pożyteczne na serwerach www)
find -type d ! -perm -111Znajduje katalogi niedostępne dla żadnego użytkownika (pożyteczne na serwerach www)
locate -r 'file[^/]*\.txt'Search cached index for names. This re is like glob *file*.txt
look referenceSprawdza (wg. Kolejności) wyraz w słowniku
grep --color reference /usr/share/dict/wordsPodkreśla trafienia dla danego wyrażenia znalezione w słowniku
Kopie zapasowe i kompresja
 gpg -c fileSzyfruje plik
 gpg file.gpgOdszyfrowuje plik
 tar -c dir/ | bzip2 > dir.tar.bz2Tworzy skompresowaną kopię katalogu dir/
 bzip2 -dc dir.tar.bz2 | tar -xOdtwarza zawartość kopii (dla plików tar.gz użyj gzip zamiast bzip2)
 tar -c dir/ | gzip | gpg -c | ssh user@remote 'dd of=dir.tar.gz.gpg'Tworzy skompresowaną i zaszyfrowana kopię katalogu /dir a następnie kopiuje go na inny komputer
 find dir/ -name '*.txt' | tar -c --files-from=- | bzip2 > dir_txt.tar.bz2Tworzy kopię z części plików zawartych w katalogu dir/ oraz innych w nim zawartych
 find dir/ -name '*.txt' | xargs cp -a --target-directory=dir_txt/ --parentsKopiuje część plików zawartych w katalogu dir/ oraz innych w nim zawartych do katalogu dir_txt
 ( tar -c /dir/to/copy ) | ( cd /where/to/ && tar -x -p )Kopiuje (wraz z prawami) katalog copy/ do katalogu /where/to
 ( cd /dir/to/copy && tar -c . ) | ( cd /where/to/ && tar -x -p )Kopiuje (wraz z prawami) zawartość katalogu copy/ do katalogu /where/to
 ( tar -c /dir/to/copy ) | ssh -C user@remote 'cd /where/to/ && tar -x -p' Kopije (wraz z prawami) katalog copy/ na inny komputer remote:/where/to/
 dd bs=1M if=/dev/sda | gzip | ssh user@remote 'dd of=sda.gz'Tworzy kopię dysku na innym komputerze
rsync (Network efficient file copier: do testów służy opcja --dry-run)
 rsync -P rsync://rsync.server.com/path/to/file filePobiera tylko różnice. W razie problemów z połączeniem można używać wielokrotnie
 rsync --bwlimit=1000 fromfile tofileKopiuje lokalnie z ograniczeniem maksymalnej prędkością. Rodzaj nice dla operacji WE/WY
 rsync -az -e ssh --delete ~/public_html/ remote.com:'~/public_html'Tworzy mirror strony (wraz kompresją i szyfrowaniem danych)
 rsync -auz -e ssh remote:/dir/ . && rsync -auz -e ssh . remote:/dir/Synchronizuje aktualny katalog z katalogiem na serwerze
ssh (Secure SHell)
 ssh $USER@$HOST commandWykonuje command na $HOST jako $USER (standardowo commend to shell)
ssh -f -Y $USER@$HOSTNAME xeyesWykonuj GUI command na $HOST jako $USER
 scp -p -r $USER@$HOST: file dir/Kopiuje wraz z prawami na $HOST do katalogu domowego użytkownika $USER
 ssh -g -L 8080:localhost:80 root@$HOSTPrzekazuje połączenia do $HOSTNAME:8080 na $HOST:80
 ssh -R 1434:imap:143 root@$HOSTPrzekazuje połączenie z $HOST:1413 na imap:143
wget (multi purpose download tool)
(cd cli && wget -nd -pHEKk http://www.pixelbeat.org/cmdline.html)Tworzy kopię strony internetowej w lokalnym katalogu
 wget -c http://www.example.com/large.fileKontynuuje pobieranie częściowo ściągniętego pliku
 wget -r -nd -np -l1 -A '*.jpg' http://www.example.com/dir/Kopiuje zbiór plików do lokalnego katalogu
 wget ftp://remote/file[1-9].iso/FTP wspiera bezpośrednio wyrażenia regularne (globbing)
wget -q -O- http://www.pixelbeat.org/timeline.html | grep 'a href' | headNatychmiast przeszukuje dane
 echo 'wget url' | at 01:00Pobiera dany URL o 1 w nocy do obecnego katalogu
 wget --limit-rate=20k urlPobiera z małym priorytetem (w tym wypadku limit to 20KB/s)
 wget -nv --spider --force-html -i bookmarks.htmlSprawdza linki w pliku
 wget --mirror http://www.example.com/Efektywnie uaktualnia lokalna kopię strony (można użyć w programie cron)
sieć (Uwaga komendy ifconfig, route, mii-tool, nslookup są przestarzałe)
 ethtool eth0Pokazuje status urządzenia sieciowego eth0
 ethtool --change eth0 autoneg off speed 100 duplex fullRęcznie ustawia prędkość urządzenia sieciowego
 iwconfig eth1Pokazuje status urządzenia bezprzewodowego eth1
 iwconfig eth1 rate 1Mb/s fixedRęcznie ustawia prędkość urządzenia bezprzewodowego
iwlist scanPokazuje dostępne sieci bezprzewodowe
ip link showPokazuje urządzenia sieciowe
 ip link set dev eth0 name wanZmienia nazwę urządzenia eth0 na wan
 ip link set dev eth0 upWłącza (lub wyłacza) urządzenie sieciowe eth0
ip addr showPokazuje adresy urządzeń
 ip addr add 1.2.3.4/24 brd + dev eth0Dodaje (lub kasuje) adres IP i maskę sieciową (255.255.255.0)
ip route showPokazuje ruting
 ip route add default via 1.2.3.254Ustawia standardową bramkę wyjścia na 1.2.3.254
tc qdisc add dev lo root handle 1:0 netem delay 20msecDodaje opóźnienie 20ms do sterownika urządzenia (przydatne w czasie testów)
tc qdisc del dev lo rootUsuwa opóźnienie dodane powyżej
host pixelbeat.orgPokazuje informacje IP dla nazwy DNS albo na odwrót
hostname -iPokazuje lokalny adres ip (równoważne z host `hostname`)
whois pixelbeat.orgPokazuje informacje whois dla nazwy lub adresu IP
netstat -tuplPokazuje usługi internetowe
netstat -tupPokazuje aktywne usługi internetowe z i do komputera
sieć w systemie Windows (uwaga: pakiet samba udostępnia w całości narzędzia związane z usługami sieciowymi systemu Windows)
smbtreePokaż komputery z Windowsem. Zobacz też polecenie findsmb
 nmblookup -A 1.2.3.4Pokaż windowsową nazwę (netbios) dla danego adresu ip
 smbclient -L windows_boxPokaz katalogi współdzielone na komputerze z Windowsem lub serwerze samby
 mount -t smbfs -o fmask=666,guest //windows_box/share /mnt/sharePodłącz katalog współdzielony
 echo 'message' | smbclient -M windows_boxWyślij wiadomość popup do komputera z windowsem (w XP SP2 standardowo wyłączone)
text manipulation (uwaga: sed używa stdin i stdout, zatem jeśli chcesz zmienić plik dodaj <oldfile >newfile)
 sed 's/string1/string2/g'Zastępuje wyraz1 na wyraz2
 sed 's/\(.*\)1/\12/g'Zmienia dowonywyraz1 na dowolnywyraz2
 sed '/^ *#/d; /^ *$/d'Usuwa komentarze i puste linie
 sed ':a; /\\$/N; s/\\\n//; ta'Łączy wszystkie linie oddzielając je znakiem \
 sed 's/[ \t]*$//'Usuwa puste znaki z linii
 sed 's/\([\\`\\"$\\\\]\)/\\\1/g'Opuszcza metaznaki powłoki aktywne wewnątrz cudzysłowia
seq 10 | sed "s/^/      /; s/ *\(.\{7,\}\)/\1/"Justuje numery do prawej
 sed -n '1000p;1000q'Pokazuje tysięczną linię
 sed -n '10,20p;20q'Pokazuje linie od 10 do 20
 sed -n 's/.*<title>\(.*\)<\/title>.*/\1/ip;T;q'Pokazuje tytuł stron internetowej napisanej w HTML
 sort -t. -k1,1n -k2,2n -k3,3n -k4,4nSortuje adresy IPV4 ip
echo 'Test' | tr '[:lower:]' '[:upper:]'Zmienia wielkość znaków
tr -dc '[:print:]' < /dev/urandomFiltruje znaki nie dające się wydrukować
history | wc -lLiczy linie
operacje na zbiorach (uwaga: Aby przyśpieszyć działanie można ustawić następującą zmienną export LANG=C. Tym samym zakłada się brak identycznych linii w pliku)
 sort -u file1 file2Połączenie nieposortowane plików
 sort file1 file2 | uniq -dCzęść wspólna nieposortowane plików
 sort file1 file1 file2 | uniq -uRóżnica nieposortowane plików
 sort file1 file2 | uniq -uSymetryczna różnica nieposortowane plików
 join -t'\0' -a1 -a2 file1 file2Połączenie posortowane plików
 join -t'\0' file1 file2Część wspólna posortowane plików
 join -t'\0' -v2 file1 file2Różnica posortowane plików
 join -t'\0' -v1 -v2 file1 file2Symetryczna różnica posortowane plików
metematyka
echo '(1 + sqrt(5))/2' | bc -lProste obliczenia (obliczenie φ). Zobacz też bc
echo 'pad=20; min=64; (100*10^6)/((pad+min)*8)' | bcBardziej skomplikowane obliczenia (int). To pokazuje maksymalne prędkość FastEthernet
echo 'pad=20; min=64; print (100E6)/((pad+min)*8)' | pythonPython potrafi obsłużyć notacje naukową
echo 'pad=20; plot [64:1518] (100*10**6)/((pad+x)*8)' | gnuplot -persistPrędkość FastE w relacji do wielkości pakietu
echo 'obase=16; ibase=10; 64206' | bcKonwertuje liczby dziesiętne do szesnastkowych
echo $((0x2dec))Konwertuje liczby szesnastkowe do dziesiętnych ((arytmetyczne rozszerzenie powłoki))
units -t '100m/9.58s' 'miles/hour'Konwersja jednostek (dziesiętne do calowych)
units -t '500GB' 'GiB'Konwersja jednostek (z SI do IEC). Zobacz też numfmt
units -t '1 googol'Definiuje jednostkę
seq 100 | (tr '\n' +; echo 0) | bcDodaje kolumne z cyframi. Zobacz też add i funcpy
kalendarz
cal -3Pokazuje kalendarz
cal 9 1752Pokazuje kalendarz dla danego miesiąca i roku
date -d friPokazuję datę najbliższego piątku. Zobacz też day
date --date='25 Dec' +%AW jaki dzień wypada w tym roku Boże Narodzenie
date --date '1970-01-01 UTC 2147483647 seconds'Konwertuje sekundy, które upłynęły od początku epoki uniksa w datę
TZ=':America/Los_Angeles' datePokazuję godzinę na zachodnim wybrzeżu USA (użyj tzselect aby wybrać daną strefę czasową)
 echo "mail -s 'get the train' P@draigBrady.com < /dev/null" | at 17:45Wysyła email z przypomnieniem
echo "DISPLAY=$DISPLAY xmessage cooker" | at "NOW + 30 minutes"Pokazuje okienko z przypomnieniem
ustawienia lokalne
printf "%'d\n" 1234Pokazuje liczbę z grupowaniem tysięcznym zgodnym z ustawieniami lokalnymi
BLOCK_SIZE=\'1 ls -lPokazuje grupowanie tysięczne podczas użycia komendy ls
echo "I live in `locale territory`"Pokazuje informacje o ustawieniach lokalnych
LANG=en_IE.utf8 locale int_prefixPokazuje lokalne informacje dla danego kraju. Zobacz też ccodes
locale | cut -d= -f1 | xargs locale -kc | lessPokazuje pola dostępne w lokalnej bazie
recode (Polecenia iconv, dos2unix, unix2dos są przestarzałe)
recode -l | lessPokazuje dostępne konwersje (aliasy na każdej linii)
 recode windows-1252.. file_to_change.txtWindows "ansi" do lokalnego kodowania (automatyczna konwersja CRLF )
 recode utf-8/CRLF.. file_to_change.txtWindows utf8 do lokalnego kodowania
 recode iso-8859-15..utf8 file_to_change.txtLatin9 (europa zachodnia) to utf8
 recode ../b64 < file.txt > file.b64Kodowanie Base64
 recode /qp.. < file.txt > file.qpQuoted printable decode
 recode ..HTML < file.txt > file.htmlTekst to HTML
recode -lf windows-1252 | grep euroPokazuje informacje o danym znaku
echo -n 0x80 | recode latin-9/x1..dumpPokazuje informacje o znaku w kodowaniu latin-9
echo -n 0x20AC | recode ucs-2/x2..latin-9/xPokazuje kodowanie latin-9
echo -n 0x20AC | recode ucs-2/x2..utf-8/xPokazuje kodowanie utf-8
CDs
 gzip < /dev/cdrom > cdrom.iso.gzTworzy skompresowaną kopię CD
 mkisofs -V LABEL -r dir | gzip > cdrom.iso.gzTworzy skompresowaną kopię CD z zawartości danego katalogu
 mount -o loop cdrom.iso /mnt/dirPodłącza (tylko odczyt) kopię CD do katalogu /mnt/dir
 cdrecord -v dev=/dev/cdrom blank=fastKasuje dysk CDRW
 gzip -dc cdrom.iso.gz | cdrecord -v dev=/dev/cdrom -Wypala CD z pliku (użyj dev=ATAPI -scanbus aby upewnić się co do urządzenia)
 cdparanoia -BKopiuje ścieżki audio z CD jako pliki wav do bieżącego katalogu
 cdrecord -v dev=/dev/cdrom -audio *.wavTworzy audio CD ze wszystkich plików wav z bieżącego katalogu (Zobacz też cdrdao)
 oggenc --tracknum='track' track.cdda.wav -o 'track.ogg'Tworzy pliki ogg z plików wav
disk space (Zobacz też FSlint)
ls -lSrPokazuje pliki według wielkości, największe na końcu
du -s * | sort -k1,1rn | headPokazuje katalogii zajmujących największą ilość miejsca w bieżącym katalogu. Zobacz też dutop
df -hPokazuje wolne miejsce na podłączonych systemach plików
df -iPokazuje wolne inodes na podłączonych systemach plików
fdisk -lPokazuje wielkość dysków i typ partycji (jako root)
rpm -q -a --qf '%10{SIZE}\t%{NAME}\n' | sort -k1,1nPokazuje wszystkie zainstalowane pakiety według wielkości (Bytes) w dystrybucjach używających rpm
dpkg-query -W -f='${Installed-Size;10}\t${Package}\n' | sort -k1,1nPokazuje wszystkie zainstalowane pakiety według wielkości (KBytes) w dystrybucjach używających deb
dd bs=1 seek=2TB if=/dev/null of=ext3.testTworzy duży plik testowy (nie zajmując w ogóle miejsca). Zobacz też truncate
monitorownie/debugowanie
tail -f /var/log/messagesMonitoruje informacje w logu
strace -c ls >/dev/nullPokazuje podsumowanie/profil wywołań systemowych danej komendy
strace -f -e open ls >/dev/nullPokazuje wywołania systemowe danej komendy
ltrace -f -e getenv ls >/dev/nullPokazuje wywołania biblioteczne danej komendy
lsof -p $$Pokazuje ścieżki otwarte przez ten proces
lsof ~Pokazuje procesy ktore mają otwartą daną ścieżkę
tcpdump not port 22Pokazuje aktywność sieciową za wyjątkiem ssh. Zobacz też tcpdump_not_me
ps -e -o pid,args --forestPokazuje procesy wg hierarchii
ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed '/^ 0.0 /d'Pokazuje procesy wg % użycia procesora
ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNSPokazuje procesy wg użycia pamięci. Zobacz też ps_mem.py
ps -C firefox-bin -L -o pid,tid,pcpu,statePokazuje wszystkie wątki danego procesu
ps -p 1,2Pokazuje informacje dla procesu o danym id
last rebootPokazuje historię ostatnich uruchomień
free -mPokazuje ilość wolnej pamięci RAM (-m w MB)
watch -n.1 'cat /proc/interrupts'Pokazuje zmiany danych aktualnie się zmieniających
informacje o systemie (zobacz też sysinfo) ('#' znaczy, że musi być wykonane z prawami root)
uname -aPokazuje wersje jądra i architekturę systemu
head -n1 /etc/issuePokazuje nazwę i wersję linuksa
cat /proc/partitionsPokazuje partycje zarejestrowane w systemie
grep MemTotal /proc/meminfoPokazuje informacje o pamięci RAM
grep "model name" /proc/cpuinfoPokazuje informacje o procesorze
lspci -tvPokazuje informacje o PCI
lsusb -tvPokazuje informacje o USB
mount | column -tPokazuje systemy plików podłączone do kuputera (informacje są wyjustowane)
#dmidecode -q | lessPokazuje informacje SMBIOS/DMI
#smartctl -A /dev/sda | grep Power_On_HoursPokazuję całościowy czas pracy dysku
#hdparm -i /dev/sdaPokazuje informacje o dysku sda
#hdparm -tT /dev/sdaTestuję prędkość odczytu dysku sda
#badblocks -s /dev/sdaSzuka popsutych bloków na dysku sda
interactive (zobacz też linux keyboard shortcuts)
readlineEdytor linowy używany przez bash, python, bc, gnuplot, ...
screenWirtualne terminale z możliwością odłączania oi podłączania
mcManager plików który może przeglądać rpm, tar, ftp, ssh, ...
gnuplotInteraktywny i obsługujący skrypty program do rysowania
linksPrzeglądarka internetowa
różne
alias hd='od -Ax -tx1z -v'Podręczna zmiana hexdump. (zastosowanie np: • hd /proc/self/cmdline | less)
alias realpath='readlink -f'Pokazuje ścieżkę w postaci kanonicznej. (usage e.g.: • realpath ~/../$USER)
set | grep $USERPrzeszukuje aktualne ustawienia środowiska
 touch -c -t 0304050607 fileZmienia datę pliku (YYMMDDhhmm)
python -m SimpleHTTPServerUruchamia prosty serwer HTTP i tworzy drzewo plików w aktualnym katalogu na http://$HOSTNAME:8000
© Apr 21 2008