Proje klasörünü aç
Betiklerini içeren klasörü ya da boş bir klasörü sohbetin çalışma klasörü olarak seç. Dosya araçları onun içinde çalışır.
‘Bash betiği oluştur’ ya da ‘Bash betiği yaz’ diye arayanların çoğunun elle tekrarladığı bir işi vardır; örneğin bir klasördeki günlük dosyalarını saymak. Tek bir işle başla. Amaç, okuyabileceğin, test edebileceğin ve yeniden çalıştırabileceğin bir dosyadır; burada ajan onu yazar, söz dizimini denetler ve her sonucu bir kart olarak gösterir.
Betiklerini içeren klasörü ya da boş bir klasörü sohbetin çalışma klasörü olarak seç. Dosya araçları onun içinde çalışır.
Betiğin neyi okuyacağını, neyi yazdıracağını ve neyi değiştirmemesi gerektiğini söyle; örneğin günlük dosyalarının salt okunur sayımı.
Betiğin çalıştırılmadan açıklanması için Plan only'yi, bir şeyi değiştiren her eylemi onaylamak için Ask first'ü seç.
bash -n çalıştır, ardından bir test klasöründe deneme yap ve her kartın çıktısını ve çıkış kodunu beklediğinle karşılaştır.
logs3 dosyacount-logs.shkaydedildibash -n count-logs.shexit 0bash count-logs.sh logsexit 0#!/usr/bin/env bash
# count-logs.sh - count lines in .log files of a folder
# usage: bash count-logs.sh [folder] (read-only)
set -eu
dir="${1:-.}"
count=$(find "$dir" -maxdepth 1 -name "*.log" | wc -l)
echo "found $count log file(s) in $dir"
for file in "$dir"/*.log; do
[ -e "$file" ] || continue
wc -l "$file"
doneBetik .log dosyalarını find ile sayar ve her birinin satır sayısını wc ile yazdırır. Yalnızca okur; set -eu ise kabuğun tanımsız bir değişkende ve çoğu başarısız komutta durmasını sağlar.
Kendi taslağını çalışma klasörüne yapıştır ve ajandan gözden geçirmesini iste. read_file betiği yükler, grep bir değişkenin kullanıldığı yerleri bulur, ajan da eksik çift tırnakları, denetlenmemiş argümanları ve belirsiz adları işaret eder. Aynı inceleme Bash başlangıç dosyanda da işe yarar: içindeki hangi komutların her açılışta çalıştığını sor. Plan only modunda ajan betiği çalıştırmadan açıklar. Düzeltme istediğinde edit_file her değişikliği diff olarak gösterir ve onu yalnızca anladıktan sonra kabul edersin.
Yeni başlayanlar için basit bir Bash sayaç betiği yalnızca bir değişken, bir for döngüsü, echo ve sleep ister. Ajandan saniye sayısını $1 olarak alan ve kalan saniyeleri yazdıran bir geri sayım iste. write_file countdown.sh dosyasını kaydeder, Shell önce bash -n, sonra 3 gibi küçük bir sayıyla deneme çalıştırır. sleep yalnızca beklediği için betik diskte hiçbir şeyi değiştirmez. Bash ile görselleri ASCII'ye çevirmek gibi fikirler aynı döngülere ve değişkenlere dayanır, ancak görsel biçimleri ek dikkat ister. Çıktı kartını izle, çıkış kodunu denetle ve yeniden kullanmadan önce kodu oku.