«control-flow» etiketlenmiş sorular

Kontrol akışı, bir program veya komut dosyası çalışırken bilgisayar kodunun yürütüldüğü sırayı ifade eder. Örnekler arasında döngüler (kod tekrarlanır) ve bir dalın diğeri yerine çalıştırıldığı koşullu ifadeler bulunur. Komut dosyalarında veya programlarda kontrol akışı hakkındaki sorular için bu etiketi kullanın - uçbirim akış kontrolü ile ilgili sorular için değil.


3
Kabuğun kontrol ve yönlendirme operatörleri nelerdir?
Sık sık farklı sembollerle farklı komutları birbirine bağlayan çevrimiçi öğreticiler görüyorum. Örneğin: command1 | command2 command1 & command2 command1 || command2 command1 && command2 Diğerleri komutları dosyalara bağlamak gibi görünüyor: command1 > file1 command1 >> file1 Bunlar ne? Onları nasıl çağırıyorlar? Onlar ne yapar? Dahası var mı? Bu soru hakkında …

6
&& ve || 'in kafa karıştırıcı kullanımı operatörler
Bir aracılığıyla Aşırıyordu /etc/rc.d/init.d/sendmaildosyası (bu çok seyrek kullanılan olduğunu biliyorum ama bir sınav için çalışıyorum) ve ben hakkında biraz karışık oldum &&ve ||operatörler. Aşağıdaki ifadelerde nerede kullanılabileceklerini okudum: if [ test1 ] && [ test2 ]; then echo "both tests are true" elif [ test1 ] || [ test2 ]; …

7
devam etmek için boşluk tuşuna basın
Bir kullanıcı basana kadar bash betiğini nasıl durdurabilirim Space? Senaryomda bir soru olmasını istiyorum Devam etmek için boşluk , çıkmak için CTRL+ tuşuna basın.C ve sonra komut dosyası durmalı ve Space tuşuna basılana kadar beklemelidir.

2
Bir dosyanın hatları üzerinde nasıl döngü?
Diyelim ki bu dosya var: hello world hello world Bu program #!/bin/bash for i in $(cat $1); do echo "tester: $i" done çıktılar tester: hello tester: world tester: hello tester: world forHer satırdaki yinelemenin tek tek boşlukları görmezden gelmesini isterim , yani son iki satırın yerini alması gerekir. tester: hello …

3
Bir dize alt dize içeriyorsa test edin
Kod bende file="JetConst_reco_allconst_4j2t.png" if [[ $file == *_gen_* ]]; then echo "True" else echo "False" fi file"Gen" içeriyorsa test ederim . Çıktı "Yanlış" dır. Güzel! Sorun, "gen" i bir değişkenle değiştirdiğimde testseq: file="JetConst_reco_allconst_4j2t.png" testseq="gen" if [[ $file == *_$testseq_* ]]; then echo "True" else echo "False" fi Şimdi çıktı "Doğru". …



2
Bash “for” döngü “foo bar…” kısmı olmadan
Geçenlerde beni şaşırtan bazı kodlara baktım çünkü işe yarıyor ve beklemiyordum. Kod bu örneğe indirgeniyor #!/bin/bash for var; do echo "$var" done Komut satırı argümanları ile çalıştırıldığında bunları yazdırır $ ./test a b c a b c Bu, bu (benim için) beklenmeyen bir şey. varTanımsız olduğu için neden bu bir …



2
Görevi bir “if” de arka plana gönderme
Bu neden? if true; then sleep 3 &; fi bash: syntax error near unexpected token `;' koşmak istiyorum sleep 3 ["uyku 3" komutu sadece bir örnek olacak şekilde "paralell" tarzında çalışır, böylece daha hızlı biter. Ama bunu alıyorum: bash: syntax error near unexpected token `;' hata mesajı. Neden? Neden arka …

2
Dosyayı satır satır okurken kullanıcı girişi isteme
Sınıf için çıktı alacak bir Bash komut dosyası yazmak gerekir ispellve ben denemek ve while döngüsü içinde kullanıcı girişi istediğimde sadece kullanıcı satırı olarak dosyanın bir sonraki satırı kaydeder. While döngüsünde kullanıcı girişi isteğinde nasıl bulunabilirim? #!/bin/bash #Returns the misspelled words #ispell -l < file #define vars ISPELL_OUTPUT_FILE="output.tmp"; INPUT_FILE=$1 ispell …


1
Döngüleri 2 çalıştırmanın en etkili yolu
Şu anda whilepencere yöneticimi, dwm'yi ve sistem bilgisini ona yazdıran durum çubuğunu başlatmak için iki farklı döngü kullanıyorum . Şu anda benim çözüm bunları aynı komut dosyasında arka arkaya çalıştırmaktır: while true; do $HOME/Scripts/dwm-status sleep 2s done & while true; do dwm >/dev/null done Ayrıca bunun gibi iç içe bir …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.