Bir satırda iki veya daha fazla komut çalıştırmak size önemli ölçüde zaman kazandırabilir ve Linux’ta daha verimli ve üretken olmanıza yardımcı olabilir .
Linux’ta bir satırda birden çok komut çalıştırmanın üç yolu vardır:
; | Komut 1; Komut 2 | Önce komut 1’i ve ardından komut 2’yi çalıştırın |
&& | Komut 1 && Komut 2 | Komut 2’yi yalnızca komut 1 başarıyla biterse çalıştırın |
|| | Komut 1 || Komut 2 | Komut 2’yi yalnızca komut 1 başarısız olursa çalıştırın |
Tek satırda birden çok Linux komutu çalıştırmak
Bunların en basiti noktalı virgüldür (;). Kullanmak istediğiniz birkaç komutu “;” ile birleştirirsiniz:
cmd1; cmd2; cmd3
Burada önce cmd1 çalışacaktır. Cmd1’in başarılı veya hatalı çalışmasına bakılmaksızın, cmd2 bundan sonra çalışacaktır. Ve cmd2 komutu bittiğinde cmd3 çalışacaktır.
Kolayca pratik yapabileceğiniz bir örnek yapalım.
mkdir new_dir; cd new_dir; pwd
Yukarıdaki komutta, önce mkdir komutuyla new_dir adında yeni bir dizin oluşturursunuz. Daha sonra cd komutunu kullanarak bu yeni oluşturulan dizine geçersiniz. Son olarak mevcut konumunuzu pwd komutu ile yazdırırsınız.
Örnek Çıktıhuseying@pardus:/home/huseying# mkdir new_dir; cd new_dir; pwd
/home/huseying/new_dir
huseying@pardus:/home/huseying/new_dir#
Noktalı virgülden (;) sonraki boşluk isteğe bağlıdır, ancak komutlar zincirinin kolayca okunabilmesini sağlar.
Birden çok Linux komutu çalıştırmak için && kullanma
Bazen, Linux komut zincirinde sonraki komutun yalnızca önceki komut başarıyla bittiğinde çalışmasını istersiniz . İşte mantıksal AND operatörü “&&” burada devreye giriyor:
cmd1 && cmd2 && cmd3
Ubuntu veya Debian tabanlı dağıtımları kullanıyorsanız, && konseptini kullanan bu komutla karşılaşmış olmalısınız:
sudo apt update && sudo apt upgrade
Burada ilk komut (sudo apt update) ilk olarak paket veritabanı önbelleğini yeniler. Hata yoksa, daha yeni sürümleri olan tüm paketleri yükseltecektir.
Daha önceki örneği ele alalım. New_dir zaten mevcutsa, mkdir komutu hata verecektir. “;” ve “&&” davranışlarındaki fark aşağıdaki ekran görüntüsünde görülebilir:
örnek çıktı:huseying@pardus:/home/huseying# mkdir new_dir && cd new_dir && pwd
mkdir: `new_dir' dizini oluşturulamıyor: Dosya var
huseying@pardus:/home/huseying#
Birden çok Linux komutu çalıştırmak için || kullanma
Bir komut zincirini çalıştırmak için mantıksal OR operatörünü (||) kullanabilirsiniz, sonraki komut yalnızca önceki komut hatalı bittiğinde çalışır . Bu durum, && ile gördüğünüzün tam tersidir.
cmd1 || cmd2 || cmd3
Cmd1 başarısız olursa, cmd2 çalışır. Cmd2 başarılı bir şekilde çalışırsa, cmd3 çalışmaz.
Örnek çıktı:huseying@pardus:/home/huseying# mkdir new_dir || cd new_dir || pwd
mkdir: `new_dir' dizini oluşturulamıyor: Dosya var
huseying@pardus:/home/huseying/new_dir#
Yazının orijinalini buradan okuyabilirsiniz.