Linux Terminal Komutları

a. Temel Linux Komutları

Terminaldeki kullanımda olan kullanıcıyı değiştirir.
su - yeniKullaniciIsmi
Belirtilen komutun kullanımını anlatır.
man komutAdi
İnternet bağlantısını düşürür ve tekrar aktifleştirir.
ifconfig eth0 down
ifconfig eth0 up
Terminal ile bağlanılan sistemin adını döndürür:(Remote bilgisayara erişildiğinde terminale whoami yazılmasıyla terminal uzak bilgisayarın ismini döndürecektir. Çünkü artık terminalimiz uzak sistemin komut satırı olmuştur.)
whoami
Siteye giderkenki uğranılan tüm router'ları listeler:
traceroute siteadi.com
Sistemi kapatır:
shutdown
Sistemi reboot eder:
shutdown -r
zip dosyasını açma:
unzip deneme.zip
Dosya içeriğini yazar:
cat filename.php
Dosya izinlerini değiştirir:
chmod -R 777 dosyaIsmi
Yönetici haklarını verir:
sudo su
Dosya oluşturur:
touch filename.php
Klasör oluşturur:
mkdir filename.php
Paylaşımlı Klasörleri Silemeyince Kullanılan Komut:
rm -rf filename            // f parametresi force'un kısaltılmışıdır.
Bulunulan dizini yazdırır:
pwd
Çalışan process'leri sıralar:
ps  
Bir uygulama yükler:
apt-get install uygulamaAdi
Bir üst dizine gider:
cd ..
Bulunulan bir önceki dizine geçer:
cd -
Dosya ismini değiştirir:
mv filename.xyz newfilename.xyz
Dosyayı farklı konuma taşır:
mv filename.xyz /filepath
Home dizinine gider:
cd ~
Bulunulan dizindeki dosya, klasörleri listeler:
dir
Bulunulan dizindeki dosya, klasörleri renklendirerek listeler:
ls
ls -l
ls -a
Dosyaları düzenleyemeye yarayan editör:
nano filename.xyz
Klasör ve dosya kopyalamayı sağlar:
cp /sourcepath/ /targetpath/
cp -R /sourcepath/ /targetpath/
Çalışan tüm process'leri detaylı bir şekilde gösterir:
ps aux
Birinci komutun ürettiği çıktıyı ikinci komutun inputuna verir:
cat filename.php | cat
Yüklü uygulamalarda arama yapar:
apt-cache search applicationname
Çekirdek piyasaya sürülme versiyonu(kernel release version):
uname --r
GCC derleyicisi versiyonunu gösterir:
gcc --version
Linux ve GCC versiyonlarını gösterir:
cat /proc/version
Bir klasör ya da dosya aranmasını sağlar:
find / -name fileorfoldername -print
Belirtilen dosyanın bulunduğu dizin(ler)i döndürür.
locate php.ini
Sistemdeki partition'ların (disklerin) ne kadarının boş olduğunu gösterir:
df -H
Sistemdeki herhangi bir dizin altındaki dosyaların boyutlarını gösterir.
du -sh *		// (d)isk (u)sage, h : human readable 
Tilde işareti home dizinini ifade eder.
~


b. Ayrıntılı Linux Komutları

Router'ın IP'sini verir
route -n	// ya da : netstat -r -n
Kaynak koddan Linux'ta kurulum yapar.
./configure	   // Windows'ta next next yaparkenki ayarlamalar gibi
make		   // Compile yapar.
make install   // Install yapar.
Sitemi kapatır.
shutdown
Sistemi kapatır.
halt
Sistemi kapatır.
poweroff
Sistemi reboot edecektir.
shutdown -r
Sistemi reboot edecektir.
reboot
Yerel ağda tüm terminallere broadcast yaparak “Sistemi kapatmamız gerek….” mesajını yayınlar ve sistemi parametrede belirtildiği gibi 10 dakika içinde kapatır.
shutdown +10 "Sistemi kapatmamız gerek. İşlerinizi 10 dakikada halledin"
Çalışmakta olan servislerin isimlerini ve kullandıkları port numaralarını gösterir.
cat /etc/services
Bir linux makinasındaki ethernet kartını disable etmeye yarar.
ifconfig eth0 down
Bir linux makinasındaki ethernet kartını aktif hale getirmeye yarar.
ifconfig eth0 up
Bir linux makinasındaki ethernet kartına geçici ip yapılandırması atar.
ifconfig eth0 192.168.130.134 netmask 255.255.255.0
Router'ın hal-i hazırda kullandığı yönlendirme tablosunu ekrana basar.
route
Ethernet kartını dinler ve tüm trafiği ekrana anlık olarak sunar.
tcpdump -i eth0
Belirli bir IP adresine giden ve gelen trafiği gösterir.
tcpdump -i eth0 host www.includekarabuk.com
Belirli bir IP adresinin belirli bir portu dinlenir ve trafik ekrana anlık olarak yansıtılır.
tcpdump -i eth0 tcp port 80 and host www.includekarabuk.com
Belgenin ilk 3 satırını yazdırır.
head -n 3 dosya.txt
Belgenin son üç satırını yazdırır.
tail -n 3 dosya.txt
Belgenin son beş satırını yazdırır ve her 3 saniyede bir bu olayı günceller (Anlık veri alan log dosyalarında kullanışlıdır).
tail -n 5 -f logDosyasi.txt
var dizini altındaki dosyaları listeler.
ls /var
Gizli dosyalar dahil bütün dosyaları listeler.
ls -al
O an sistemde bulunan kullanıcıların kullanıcı isimlerini, hangi uçbirimlerde çalıştıklarını ve sisteme giriş tarih ve saatlerini gösterir.
who
CPU, RAM kullanımı ve çalışan process'leri görüntüler.
htop
Process'leri sıralar.
ps  
ps komutunun sunduğu çıktıyı [anlık] olarak sunan bir arayüz.
top
Aktarılan birinci komutun output'undaki bash kelimesinin geçtiği satırı ya da satırları ekrana basar:
ps aux | grep bash
pid değerine göre process'i sonlandırır.
kill pidNumber   // pid numarası ps aux | grep processAdi ile öğrenilir.
Process takıldı ve sonlanmıyorsa -9 parametresi girilir.
kill -9 pidNumber
pid değerine göre değil de direk ismiyle process yok etmeye yarar.
killall processAdi	// örn; killall wrk
pid değerine göre değil de direk ismiyle process yok etmeye yarar (2).
pkill processAdi	// örn; pkill wrk
file1.txt içeriğini file2.txt'e yazar (overwrite)
cat file1.txt > file2.txt
file1.txt içeriğini file2.txt içindekilerin sonuna ekler (append)
cat file1.txt >> file2.txt
file1.txt ve file2.txt içeriğini alt alta file3.txt'ye yazar (overwrite)
cat file1.txt file2.txt > file3.txt
Sisteme hasan isimli kullanıcı ekler.
useradd hasan
Sistemdeki hasan adlı kullanıcının şifresini değiştirir.
passwd hasan
Sistemdeki hasan adlı kullanıcının hesabını siler.
userdel hasan
Sistemdeki hasan adlı kullanıcın hesabı ilişkili olduğu /home dizinin- deki klasörle beraber silinir.
userdel -r hasan
hasan adlı kullanıcının hesabını geçici süreliğine kilitler.
usermod -L hasan	// L: Locked
hasan adlı kullanıcının hesabı açılır.
usermod -U hasan	// U: Unlocked
Yeni bir grup oluşturur.
groupadd sistemYoneticileri
Varolan bir grubu siler.
groupdel sistemYoneticileri
Gruba kullanıcı ekler.
gpasswd -a hasan	// a: add
Gruptan kullanıcı siler.
gpasswd -d hasan	// d: delete
Belirli bir kullanıcının dahil olduğu grubu (grupları) gösterir.
groups hasan
Dosyanın (Klasörün) sahibini değiştirir.
chown kullaniciIsmi dosyaIsmi
chown -R kullaniciIsmi klasorIsmi
Dosyanın (klasörün) ait olduğu grubu değiştirir.
chgrp yeniGrupIsmi dosyaIsmi
Dosya satırlarını alfabetik sıralı olarak ekrana basar.
sort dosyaIsmi
Aranan stringin bulunduğu satırı ya da satırları ekrana basar.
cat deneme.txt | grep "arananAnahtar"
Aranan stringin kaç tane satırda bulunduğunun sayısını ekrana basar.
cat deneme.txt | grep -c "arananAnahtar"
Aranan string büyük küçük harf oluşuna bakmaksızın aranır ve bulunan satırlar ekrana basılır.
cat deneme.txt | grep -i "arananAnahtar"
Aranan stringin bulunduğu satırları göstereceği gibi çıktıdaki her satırın başında bir de kaçıncı satırda oldukları bilgisi (sayısı) gösterilir.
cat deneme.txt | grep -n "arananAnahtar"
Dosyadaki satırların sayısını ekrana basar.
cat deneme.txt | wc -l			// -l : line
Dosyadaki kelimelerin sayısını ekrana basar.
cat deneme.txt | wc -w			// -w : word
Dosyadaki karakter sayısını ekrana basar.
cat deneme.txt | wc -c			// -c : character
Dizindeki öğeler satır satır sıralanır. wc ile de satır sayısı sayılır. Böylece dizindeki öğe sayısı bulunmuş olur.
ls -l | wc -l
Mevcut dizin ve aşağısındaki tüm dosyaların içeriğini tarar ve "merhaba" string'i bulunan satırları dosya ismi : "aranan string" şeklinde ekrana basar.
grep -r "merhaba"
Belirtilen pattern'a uygun string'leri tarar ve bulduğunda ekrana basar.
cat deneme.txt | grep -E "ps au*"    // ps aux satırları ekrana gelir.
Sed gelen / giden içerikleri düzenleyerek belirli hedefe çıktılamaya yarayan bir stream editor'dür. -i parametresi (--in-place) düzenlemenin başka hedefe doğru çıktılanmasını değil de argumanda belirtilen dosya üzerine çıktılanmasını sağlar. s variable'ı select'tir ve string içeriği seçer. sed komutu aşağıda apache2.conf dosyasındaki ServerName localhost string'ini ServerName deneme olarak düzenler (günceller).
sed -i "s/ServerName localhost/ServerName deneme/" /etc/apache2/apache2.conf
Sed gelen / giden içerikleri düzenleyerek belirli hedefe çıktılamaya yarayan bir stream editor'dür. -i parametresi (--in-place) düzenlemenin başka hedefe doğru çıktılanmasını değil de argumanda belirtilen dosya üzerine çıktılanmasını sağlar. 7i variable'ı 7 numaralı satır arasını (inline'ı) seçer. sed komutu aşağıda apache2.conf dosyasının 7nci satı- rına "# edited by hasan fatih" string'ini ekler ve mevcut devam eden apache2.conf içeriklerini aşağı doğru kaydırarak dosyayı düzenler (günceller).
sed -i "7i # edited by hasan fatih" /etc/apache2/apache2.conf
Uzun ve kompleks komutlara bir kod ad atamaya ve o uzun kodu atanan kısa kod ile çalıştırmaya yarar.
alias kisaAd='ps aux | grep bash'
kisaAd					// ps aux | grep bash çalışır.
Atanan alias'ı silmeye yarar.
unalias kisaAd
alias’ları ~/.bashrc dosyasına yerleştirirseniz sisteme her giriş- çıkışınızda yeniden aynısını tanımlamak zorunda kalmazsınız. [Aynı kodlamayı ~/.bashrc dosyasının en altına koyduktan sonra bash komutunu çalıştırmalısın. Böylece alias aktifleşir]
nano ~/.bashrc
bash
Bulunulan dizine ait GUI penceresi açar:
nautilus .
Dosya Sistemi Penceresi Açar:
gnome -open /dosyayolu
PDF Dosyasını Açar:
evince file2open.pdf
Belirtilen dosyanın klasör mü değil mi ve değilse hangi türde bir dosya olduğunu belirtir.
file filename
ls,nano gibi temel komutlar dizisini yükler:
sudo apt-get install --reinstall coreutils
.class uzantılı dosyalar metin belgelerinde görüntülenemezler. Assembly dilindedirler. Dolayısıyla şu şekilde disassembly edilebilir:
javap -c UpdateProfile   	// UpdateProfile.class
Debian paketlerini yüklemeyi sağlar:
dpkg -i packetName.deb		// or dpkg --install packetName.deb
Dosyanın içeriğini aşağı doğru kaydırarak gösterir.
more file.txt
Dosyanın içeriğini hem aşağı doğru hem de yukarı doğru kaydırarak göstererir.
less file.txt
Dosyanın en başındaki ilk 10 satırı gösterir.
head file.txt
Dosyanın en sonundaki son 10 satırı gösterir.
tail file.txt
Stdin'den aldığı input'un çıktısını hem dosyaya hem de stdout'a basmaya yarar (duplicate eder).
echo "123" | tee ~/Desktop/sample.txt  // 123 hem dosyaya hem ekrana
				                       // basılır.
Kullanılan donanım modellerini gösterir.
lspci -nnk			// k çıktıya kernel bilgisini, nn ise  
					// donanım ID'sini ekler. Donanım ID'si
					// donanımı internette araştırmak için 
					// kullanışlı olabilir.
Kullanılan ekran kartı modelini gösterir.
lspci -nnk | grep VGA -A3		// VGA ile hardware info list'teki ilgili
					            // satır eşleştirilir. -A 3 ile de eşleşen
					            // satırdan sonraki 3 satırı daha ekrana ver
					            // denir. ( -A, yani (A)fter)
Kullanılan ethernet kartı modelini gösterir.
lspci -nnk | grep net -A2		// net ile hardware info list'teki ilgili
					            // satır eşleştirilir. -A 2 ile de eşleşen
					            // satırdan sonraki 2 satırı daha ekrana ver
					            // denir. ( -A, yani (A)fter)
FTP sunucusuna login olmayı sağlar.
ftp includekarabuk.com		    // Gelen ekrana kullanıcı adı
				                // ve sonra şifre girilir.
Bulunulan dizinin altındaki belirli isimde dosyaları topluca silmeyi sağlar.
find . -type f -name "*error*"	       

				       // Recursive olarak tüm alt dizinlerdeki error 
				       // string'ine sahip dosyaları listeler.  
			  	       // Not: Silme işlemine geçmeden önce silincek 
				       // listeyi incelemek ve yanlış dosya arada kay-
				       // nayıp silinmesini önlemek için kullanılır.
find . -type f -name "*error*" -delete 

				       // Recursive olarak tüm alt dizinlerdeki error
				       // string'ine sahip dosyaları siler.
				       
Public IP'mizi öğrenmeyi sağlar.
curl icanhazip.com	   // Web tarayıcıdan https://icanhazip.com/ adresine
				       // gidildiğinde yanıt olarak public ip'mizi gösteren
				       // içerik gelmektedir. Dolayısıyla komut satırından
				       // curl ile istek attığımızda public ip miz content
				       // olarak komut satırında görünür. 
Komut satırında google map ascii modda açılır.
telnet mapscii.me


c. EK

Şema halinde toparlanmış temel linux komutları:





Bu yazı 02.09.2024 tarihinde, saat 02:55:18'de yazılmıştır. 01.09.2024 tarihi ve 23:57:33 saatinde ise güncellenmiştir.
Yazar : Hasan Fatih ŞİMŞEK Görüntülenme Sayısı : 49
Yorumlar
Henüz yorum girilmemiştir.
Yorum Ekle
*
* (E-posta adresiniz yayınlanmayacaktır.)
*
*

#Arşiv


#Giriş

ID :
Şifre :