Özet - Sayı Tahmincisi
Coddy'nin Terminal Journey'sinin Temeller bölümünün bir parçası. Ders 73 / 82.
Görev
Kolayguesser.sh adlı, sabit bir tahmin dizisiyle sayı tahmin oyununu simüle eden bir kabuk betiği oluştur.
Betiğin şunları yapması gerekir:
- Shebang satırıyla başla (
#!/bin/bash) secretadlı bir değişkene5değerini ataguessadlı bir değişkene başlangıçta0değerini ataguessdeğerisecretdeğerine eşit olmadığı sürece devam eden bir while döngüsü kullan- Döngünün içinde
guessdeğerini 1 artır - Tahmini kontrol etmek için bir if ifadesi kullan:
guessdeğerisecretdeğerinden küçükse şunu yazdır:Guess [guess]: Too low!guessdeğerisecretdeğerine eşitse şunu yazdır:Guess [guess]: Correct!
Betiği çalıştırılabilir hâle getir ve çalıştır. Çıktın şu olmalıdır:
Guess 1: Too low!
Guess 2: Too low!
Guess 3: Too low!
Guess 4: Too low!
Guess 5: Correct!Her satır için bir
echokullanarak çok satırlı bir betik yazmak işe yarar, ancak daha kısa bir yol vardır: bir here document, kapanış sözcüğüne kadar olan her şeyi doğrudan dosyaya aktarır.cat > script.sh << 'EOF' #!/bin/bash echo "hello" EOF
'EOF'çevresindeki tırnaklar, dosya yazılırken$variablesifadesinin genişletilmesini engeller; betiğin kendisi bunları kullandığında istediğin davranış budur.
İpucu: while koşulunda "not equal" için
-ne, if ifadesinde "less than" için-ltve "equal to" için-eqkullan. Her döngü yinelemesinin başındaguess=$((guess + 1))ile tahmini artır.
Kendin dene
Temeller bölümündeki tüm dersler
4Dizinler
Bir Dizin OluşturBir Dizin KopyalaBir Dizin Taşı ve Yeniden AdlandırBir Dizin SilÖzet - Dizin İşlemleri7Dosya İçeriği
Head ve TailKelime SayısıSort KomutuUnik KomutuGrep TemelleriBayraklarla GrepÖzet - Metin Dedektifi10Günlük Analizörü Projesi
Proje Genel BakışıGünlük Dosyasını Görüntüleme13Kabuk Betikleme Temelleri
Kabuk Betiği NedirBir Betik Oluştur ve ÇalıştırBetiklerde DeğişkenlerBetiklerde Kullanıcı GirdisiIf İfadesiFor DöngüsüWhile DöngüsüÖzet - Sayı Tahmincisi2Navigasyon
Çalışma Dizini'ni YazdırDosyaları ListeleDizin DeğiştirMutlak ve Göreli YollarEv ve Kök DizinÖzet - Yolunu Bul8Yönlendirme
Standart ÇıktıDosyaya Üzerine YazmaDosyaya EklemeStandart GirdiStandart HataÖzet - Günlük Oluşturucu3Dosyalar
Bir Dosya OluşturBir Dosya OkuBir Dosya KopyalaBir Dosyayı Taşı ve Yeniden AdlandırBir Dosya SilÖzet - Dosya İşlemleri6Joker Karakterler ve Desenler
Yıldız Joker KarakteriSoru İşareti Joker KarakteriKöşeli Parantez JokerleriJoker Karakterleri BirleştirmeÖzet - Seçici İşlemler9Borulama
Boru Nedir?İki Komutu ZincirlemeBirden Fazla Komutu ZincirlemeGrep ile BoruÖzet - Veri Boru HattıKendi başına pratik yap: Terminal playground