Kullanışlı linux komutları

Linux’un en güçlü yanlarından biri komut satırıdır. Linux da çoğu işlem görsel arayüzden yapılabilir fakat komut satırından yapmak herzaman daha iyidir hemde zevklidir. Komut satırına bir alıştınızmı emin olun daha bırakamazsınız, aşırı derecede bağımlılık yapar :) Zengin komut parametreleri, pipe ve çıktı yönlendirmeleriyle konsoldan yapamayacağınız hiçbirşey yoktur. Gui de bu olanaklar sınırlıdır.

Şimdi sizlerle birkaç kullanışlı komut paylaşmak istiyorum.

- En son çalıştırılan komutu kullanmak

En son çalıtışrılan komutu tekrardan yazmak veyada düzenlemek yerine !! ile ulaşabilirsiniz.

$ apt-get install tmux
$ sudo !!

- İstenilen zamanda komut çalıştırmak:

$ echo "halt" | at 10:20

- Bir işlem bitince komut çalıştırmak:

$ wait <PID> && halt

- Belirtilen kelimenin geçtiği dosyaları bulmak:

$ find . -iname *.py | xargs grep "aranacak_kelime" -sl

- Ram i en çok kullanan process leri görmek:

$ ps aux | sort -nk 4 | tail

- Dosyaları gerçek zamanlı izlemek :

Özellikle log dosyalarına bakarken dosyaya yeni kayıt eklendiğinde yeni kaydı görmek çok işe yarar. tail komutunu f parametresi ile kullanarak dosyanın son satırlarını izleyebilirsiniz.

$ tail -f /var/log/apache2/error.log

- Cd/dvd nin iso imageını almak:

$ dd if=/dev/cdrom of=~/cdimage.iso

- Dosyadaki gereksiz satırları (boş satırları ve yorum satırlarını) temizlemek:

$ sed -e '/^#/d' -e 's/#.*$//' <dosya>

- Kullanıcınin bütün süreçlerini öldürüp kullanıcıyı kapı dışarı etmek:

$ killall -u <kullanici_adi>

- 500MB dan büyük 1GB tan küçük dosyaları bulmak :

$ find / -type f -size +500M -size -1G

- Processleri isimleri ile öldürmek :

Bir işlemi öldürmek istediğinizde o işlemin PID numarasını öğrenip “kill” komutuyla o process’e öl sinyali gönderirsiniz.Process id yi bulmakla uğraşmamak için pkill komutuyla isminde belirttiğiniz kelime geçen bütün processleri öldürebilirsiniz.

$ pkill firefox

- İşlemin CPU kullanımını sınırlamak :

Diyelimki dd komutuyla harddiskinizi yedekliyorsunuz ve dd komutu CPU yu fazla meşgul ediyor ve başka bir işlem yaparken yavaşlama oluyor, bu ve bunun gibi işlemlerde cpulimit komutu ile işlemciyi fazla kullanan process’in CPU kullanımını kısıtlayabilirsiniz.

$ cpulimit -p <PID> -l 50

- Ağdaki bütün PC lerin açık portlarını bulmak :

$ nmap -v -sT 192.168.0.0/24

- Tar dosyasını belirtilen dizine açmak:

$ tar -xfvz yedekler.tar.gz -C /tmp/

- İki dizindeki farklılıkları bulmak :

$ diff -rq <dizin1> <dizin2>

- Bir dizin oluşturup oluşturulan dizine gitmek :

$ mkdir /home/mesuutt/deneme && cd $_

$_ kendinden önce çalışan komutun son parametresini işaret eder.

- Kopyalama işleminin progressbar ile nekadar kaldığını görmek:

Büyük kopyalama işlemlerinde çok işe yarayor :)

$ rsync -rv <kaynak> <hedef> --progress

- Ssh ile bağlandığınız PC nin ekran görüntüsünü almak:

$ DISPLAY=:0.0 import -window root /tmp/ekran_goruntusu.png

- Bulunduğunuz dizindeki dosya ve dizinleri boyuta göre büyükten küçüğe doğru sıralamak:

$ du -skh * | sort -hr

- Belirtilen dosya hariç diğer dosyaları silmek:

Bu özelliğin çalışması için extglogun açık olması gerekir. Eğer komut hata veriyorsa shopt -s extglob komutuyla extglobu aktifleştirebilirsiniz.

$ rm -f !(onemli.txt)

- Wan IP sini öğrenmenin en akılda kalıcı yolu :

$ curl ifconfig.me

- Bir dosyanın izinlerinin başka bir dosyaya aktarmak(referans):

$ chmod --reference <dosya1> <dosya2>

- Kullandığın dağıtımın türünü ve versiyonunu öğrenme :

$ lsb_release -a

- 32bit mi 64 bit mi kullanıyorsun? :

$ getconf LONG_BIT

- Cache i boşaltmak :

$ sync && echo 3 > /proc/sys/vm/drop_caches

- Geçmişi kaydetmeden konsolu kapatmak:

$ kill -9 $$

- Komutu komut geçmişine(history) kaydetmeden çalıştırmak :

<bosluk>komut

- Uzakpc deki bir dizini locak pc de bir dizine bağlamak :

$ sshfs name@server:/dizin/yolu /baglanacagi/dizin/yolu/
comments powered by Disqus