swetrix
bashlinux

7 Kullanışlı Linux Shell Operatörü

Linux komutlarının zincirlenmesi, birkaç komutun birleştirilmesi ve aralarında kullanılan operatörün davranışına göre yürütülmesi anlamına gelir. Linux’ta komutların zincirlenmesi, aslında biraz shell script yazmaya benzer.

1. Ampersand Operatör (&)

‘&’ işlevi, komutun arka planda çalışmasını sağlamaktır. Sadece bir boşluk ve ‘&’ ile devam eden komutu yazın. Arka planda tek seferde birden fazla komut çalıştırabilirsiniz.

apt update &

Arka planda iki komutu aynı anda çalıştırın:

apt-get update & apt-get upgrade -y &

2. noktalı virgül Operatör (;)

Noktalı virgül operatörü, tek seferde birkaç komutu çalıştırmayı ve komutların sırayla yürütülmesini sağlar.

Aşağıdaki komut ilk önce apt’yi günceller sonra apt paketlerini yükseltir.

apt-get update ; apt-get upgrade ;

3. AND (VE) Operatörü (&&)

AND (VE) Operatörü (&&), yalnızca ilk komutun yürütülmesi BAŞARILIysa, yani ilk komutun çıkış durumu 0 ise, ikinci komutu yürütür. Bu komut, son komutun yürütme durumunu kontrol etmede çok yararlıdır.

Aşağıdaki komut ilk önce linuxpedi.com‘a ping atar eğer ping başarılıysa ekrana echo komutu ‘Linuxpedi Site UP’ yazdırır. Eğer ping başarısız olursa echo komutu çalışmaz.

ping -c 4 linuxpedi.com && echo 'Linuxpedi Site UP'

4. OR (VEYA) Operatörü (||)

OR (VEYA) Operatörü (||), programlamadaki ‘else’ ifadesine çok benzer. Bu operatör, yalnızca ilk komutun yürütülmesi başarısız olduğunda, yani ilk komutun çıkış durumu ‘1’ olduğunda ikinci komutu yürütmenize izin verir.

Aşağıdaki komut snap klasörünü rm ile silmek istiyor ama -r parametresi kullanmadan klasör silinemeyeceği için başarısız olup echo ile ekrana mesajımızı yazdırır.

rm snap || echo 'Klasör silmek için -r parametresini kullanmalısın'

6. AND – OR (VE – VEYA) operatörü (&& – ||)

Bu operatör aslında ‘AND’ ve ‘OR’ Operatörünün bir birleşimidir. Bir ‘if-else’ ifadesine çok benzer.

Aşağıdaki komut linuxpedi.com‘a 4 kere ping atıcak eğer pingler doğru şekilde iletilirse ‘Site UP’ iletilmezse ‘Site Down’ yazacak.

ping -c4 linuxpedi.com && echo "Site UP" || echo "Site Down"
root@linuxpedi:~# ping -c3 linuxpedi.com && echo "Site UP" || echo "Site Down"
PING linuxpedi.com (34.141.144.143) 56(84) bytes of data.
64 bytes from 143.144.141.34.bc.googleusercontent.com (34.141.144.143): icmp_seq=1 ttl=61 time=0.936 ms
64 bytes from 143.144.141.34.bc.googleusercontent.com (34.141.144.143): icmp_seq=2 ttl=61 time=0.365 ms
64 bytes from 143.144.141.34.bc.googleusercontent.com (34.141.144.143): icmp_seq=3 ttl=61 time=0.384 ms

--- linuxpedi.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2010ms
rtt min/avg/max/mdev = 0.365/0.561/0.936/0.264 ms
Site UP

7. Pipe Operatörü ( | )

PIPE operatörü, ilk komutun çıktısının ikinci komutun girdisi olarak kullanmak çok kullanışlıdır. Örneğin, ‘ls ‘ çıktısını ‘wc’ ile saydıralım. Yani bir klasör altındaki bütün dosya ve klasörleri listeleyip bunun sayısını öğrenelim.

ls /root | wc -l
root@linuxpedi:~# ls /root | wc -l
2
Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Önceki Yazı
nfsubuntu

Ubuntu 20.04 Üzerinde NFS Server kurulumu ve yapılandırması

Sonraki Yazı
adduser deluser

Ubuntu ve Debian’da kullanıcı oluşturma ve silme

Benzer Yazılar