Mở thư mục dự án
Chọn thư mục chứa các script của bạn, hoặc một thư mục trống, làm thư mục làm việc của cuộc chat. Các công cụ tệp hoạt động bên trong nó.
Những người tìm 'cách viết script bash' hay 'tạo file bash script' thường có một việc phải làm tay lặp đi lặp lại, chẳng hạn đếm các tệp log trong một thư mục. Bắt đầu với một việc. Mục tiêu là một tệp bạn đọc được, kiểm thử được và chạy lại được, và ở đây agent soạn nó, kiểm tra cú pháp và hiện mỗi kết quả thành một thẻ.
Chọn thư mục chứa các script của bạn, hoặc một thư mục trống, làm thư mục làm việc của cuộc chat. Các công cụ tệp hoạt động bên trong nó.
Nói rõ script cần đọc gì, in ra gì và tuyệt đối không được thay đổi gì, ví dụ một lần đếm tệp log chỉ đọc.
Chọn Plan only để script được giải thích mà không chạy, hoặc Ask first để duyệt từng hành động làm thay đổi thứ gì đó.
Chạy bash -n, rồi chạy thử trên một thư mục thử nghiệm, và so sánh kết quả cùng mã thoát của từng thẻ với điều bạn mong đợi.
logs3 tệpcount-logs.shđã lưubash -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"
doneScript đếm các tệp .log bằng find và in số dòng của từng tệp bằng wc. Nó chỉ đọc, và set -eu làm shell dừng khi gặp biến chưa đặt và ở hầu hết các lệnh bị lỗi.
Dán bản nháp của chính bạn vào thư mục làm việc và nhờ agent xem lại. read_file nạp script, grep tìm những chỗ dùng một biến, và agent chỉ ra các dấu ngoặc kép thiếu, các tham số chưa được kiểm tra và những cái tên chưa rõ nghĩa. Cách xem lại này cũng áp dụng được cho tệp khởi động Bash của bạn: hãy hỏi những lệnh nào trong đó chạy mỗi lần khởi động. Ở Plan only, agent giải thích script mà không chạy nó. Khi bạn nhờ sửa lỗi, edit_file hiện mọi thay đổi dưới dạng diff, và bạn chỉ chấp nhận sau khi đã hiểu nó.
Một script hẹn giờ Bash đơn giản cho người mới chỉ cần một biến, một vòng lặp for, echo và sleep. Nhờ agent viết một bộ đếm ngược nhận số giây làm $1 và in ra số giây còn lại. write_file lưu countdown.sh, và Shell chạy bash -n rồi chạy thử với một số nhỏ như 3. Vì sleep chỉ chờ, script không thay đổi gì trên đĩa. Những ý tưởng như chuyển ảnh thành ASCII bằng Bash dựa trên cùng các vòng lặp và biến đó, dù các định dạng ảnh cần chú ý thêm. Hãy theo dõi thẻ kết quả, kiểm tra mã thoát và đọc mã trước khi bạn dùng lại.