Döngü için BASH Nasıl Kullanılır
Bash betikleri yazılırken en temel hilelerden biri, bir döngü oluşturmayı gerektirir, böylece birkaç kez otomatik olarak belirli bir görevi gerçekleştirebilirsiniz. Sonunda, döngü önceden belirlenmiş bir test koşuluna ulaşacak ve aniden yürütmeyi bırakacaktır. Bunlar gibi döngüler, Linux ve macOS'taki bash, Windows 10'daki bash kabuğu ve hatta FreeBSD'deki çeşitli kabuklarda bile mükemmel şekilde çalışacaktır. Doğal olarak, herhangi bir döngüde tercih edeceğiniz komutu yazabilir ve herhangi bir süreci istediğiniz zaman tutabilirsiniz. Son derece basit döngüler yazarken, istediğiniz becerileri istediğiniz şekilde yazmak için bu becerileri kullanabilirsiniz.
Bir komut dosyası yazmaya başlamak için birçok yol vardır, ancak bu tartışma için, KDE, MATE, LX veya Whisker menülerinde tıklatarak veya Dash üzerinde terminal arayarak bir komut istemi açtığınızı varsayalım veya Ctrl, Alt ve T tuşlarını aynı anda basılı tutarak. Vi / vim ve nano'yu editör olarak tartışacağımız halde, hangi editörün kullanacağımızın konusu oldukça kişisel ve ne kadar rahat hissederseniz edersiniz.
Yöntem 1: Döngü kadar
Belki de bash içindeki en temel döngü, kalan döngüdür. Ayarladığınız test koşulu doğru olana kadar komutları yürütmeye devam edecektir. Unt.sh adında varolmayan bir dosyayı açmak için nano veya vi kullandığınızı ve içine yeni metinler eklemeye hazır olduğunuzu varsayarız. Öncelikle bunu kolaylaştırmak için terminalinizde 20'ye değecek bir şey yapacağız.
Aşağıdakileri yazarak başlayın:
#! / Bin / bash
n = 0
kadar [$ n -gt 20]
yap
echo $ n
((N ++))
tamam
Nano kullanıyorsanız, Ctrl tuşunu basılı tutarak ve ardından O ve son olarak X düğmesine basarak kaydedin. Vi kullanıcısı kaçmayı zorlamak isteyecektir, sonra kaydetmek ve çıkmak için wq yazın.
Çalıştırılabilir hale getirmek için komut isteminde chmod + x'e yazın ve sonra çalıştırmak için ./untilLoop yazın. Çalıştığında, döngü, n değişkeni 20'ye ulaşana kadar yeni numaraları terminalinizde yazdırmaya devam edecektir.
Bu arada, ilk satır, bu komut dosyaları ile çalışırken ortamınıza hangi kabuğun yükleneceğini söyler. Bazı programcılar, komut dosyanızın belirli POSIX standartlarına uyduğundan emin olmak için yalnızca #! / Bin / sh komutunu kullanmanızı tavsiye eder, ancak bu basit komut dosyalarının modern sistemlerin büyük çoğunluğu üzerinde herhangi bir problem yaşanmaması gerekir.
Yöntem 2: döngü için
Bir for döngüsünde, belirli bir listedeki her öğeye bir göz atılır ve ardından bu listede belirli bir komut kümesi gerçekleştirilir. Bazı işletim sistemi adlarını yazdıran bir tane yapacağız, ancak yine de isterseniz bununla ilgili herhangi bir şey yapabileceğinizi unutmayın.
Komut isteminde nano forLoop veya vi forLoop yazın ve aşağıdaki komut dosyasını girmeye başlayın. Vi kullanıcısı bunu yapmadan önce ekleme moduna girmek zorunda kalacak.
#! / Bin / bash
unices = 'GNU / Linux FreeBSD OpenBSD NetBSD Solaris OpenIndiana Darwin HP-UX Minix'
unix için $ unices içinde
yap
echo $ unix
tamam
PRO TIP: Sorun bilgisayarınız veya dizüstü bilgisayar / dizüstü bilgisayar ile yapılmışsa, depoları tarayabilen ve bozuk ve eksik dosyaları değiştirebilen Reimage Plus Yazılımı'nı kullanmayı denemeniz gerekir. Bu, çoğu durumda, sorunun sistem bozulmasından kaynaklandığı yerlerde çalışır. Reimage Plus'ı tıklayarak buraya tıklayarak indirebilirsiniz.
Dosyayı yeniden çalıştırabilmek için Ctrl + O ve sonra Ctrl + X yöntemini kullanarak nano veya Esc sonra: wq yöntemini chmod + x forLoop komutunu vermeden önce kaydedin . Bir kez, komut isteminde ./forLoop yazarak çalıştırın. For döngüsü, echo değişkeni içindeki öğelerin her birinde çalışmak için echo komutunu döndürür. Bir kez daha, bu listeyi herhangi bir argümanla değiştirebilir ve ekoyu uzun süreçleri otomatikleştirmek için herhangi bir komutla değiştirebilirsiniz.
Yöntem 3: while döngüsü
Nano, vi veya kullanmak istediğiniz diğer editörleri kullanarak whileLoop adlı üçüncü bir dosyayı düzenlemeye başlayın. Bir grafiksel metin editörü kullanmayı tercih ederseniz, bu dosyayı herhangi biriyle de yapabilirsiniz. Bu, dosyayı komut isteminin içinden çalıştığınız dizine koyduğunuzdan emin olabilirsiniz. .
Bu dosyanın içinde satırları eklemek istersiniz:
#! / Bin / bash
n = 0
[$ n -le 20]
yap
echo $ n
((N ++))
tamam
Dosyayı diğerlerini kaydettiğiniz şekilde kaydedin ve sonra metin düzenleyicinizden çıkın. Çıktıktan sonra, yürütmek için chmod + x whileLoop komutunu verin ve sonra çalıştırmak için ./whileLoop komutunu çalıştırın. UntLoop senaryosundan çıkan aynı çıktıyı, 0 ila 20 arasında olduğu gibi birinci yönteme göre göreceksiniz.
Bu, bu modada döngülerle çalışırken her şeyi yapmanın birden fazla yolu olduğu gerçeğinin mükemmel bir kanıtıdır. Teknik olarak yanlış bir yolu olmasa da, muhtemelen komut dosyalarınızı C programlama dilinin işleyişine ya da başka bir şekilde yapmasına daha yakın bir şekilde yazmanız gerektiğini iddia eden komut yazarları arasında rastlayabilirsiniz. Diğerleri bunu yapmamanızı önerebilir. Dürüst olmak gerekirse, bir problemi çözmek için birçok doğru yol vardır.
Onlarla pratik yaptıktan sonra komut dosyalarınızı silmekten çekinmeyin.
PRO TIP: Sorun bilgisayarınız veya dizüstü bilgisayar / dizüstü bilgisayar ile yapılmışsa, depoları tarayabilen ve bozuk ve eksik dosyaları değiştirebilen Reimage Plus Yazılımı'nı kullanmayı denemeniz gerekir. Bu, çoğu durumda, sorunun sistem bozulmasından kaynaklandığı yerlerde çalışır. Reimage Plus'ı tıklayarak buraya tıklayarak indirebilirsiniz.