Відкрийте теку проєкту
Оберіть теку, де лежать ваші скрипти, або порожню як робочу теку чату. Файлові інструменти працюють усередині неї.
Люди, які шукають «create bash script» або «як написати скрипт bash», зазвичай мають одну справу, яку роблять вручну знову й знову, наприклад підрахунок файлів журналу в теці. Почніть з однієї справи. Мета — файл, який можна прочитати, перевірити й запускати знову, і тут агент пише його, перевіряє синтаксис і показує кожен результат карткою.
Оберіть теку, де лежать ваші скрипти, або порожню як робочу теку чату. Файлові інструменти працюють усередині неї.
Скажіть, що скрипт має читати, що виводити і чого не повинен змінювати, наприклад підрахунок файлів журналу лише для читання.
Оберіть Plan only, щоб скрипт пояснили без запуску, або Ask first, щоб схвалювати кожну дію, що щось змінює.
Виконайте bash -n, потім пробний запуск на тестовій теці та порівняйте вивід і код завершення кожної картки з очікуваним.
logs3 файлиcount-logs.shзбереженоbash -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"
doneСкрипт рахує файли .log через find і виводить кількість рядків у кожному через wc. Він лише читає, а set -eu змушує оболонку зупинитися на незаданій змінній і на більшості команд, що завершилися помилкою.
Вставте власну чернетку в робочу теку й попросіть агента її переглянути. read_file завантажує скрипт, grep знаходить місця, де використовують змінну, а агент вказує на відсутні подвійні лапки, неперевірені аргументи та неясні імена. Така сама перевірка працює для вашого файлу запуску Bash: запитайте, які команди в ньому виконуються за кожного старту. У Plan only агент пояснює скрипт, не запускаючи його. Коли ви просите виправлення, edit_file показує кожну зміну як diff, і ви приймаєте її лише тоді, коли розумієте.
Простому скрипту-таймеру на Bash для початківців потрібні лише змінна, цикл for, echo і sleep. Попросіть агента зробити відлік, що бере кількість секунд із $1 і виводить залишок. write_file зберігає countdown.sh, а Shell виконує bash -n, а тоді пробний запуск із малим числом, наприклад 3. Оскільки sleep лише чекає, скрипт нічого не змінює на диску. Ідеї на кшталт перетворення зображень на ASCII за допомогою Bash спираються на ті самі цикли й змінні, хоча формати зображень потребують додаткової уваги. Стежте за карткою виводу, перевіряйте код завершення й читайте код, перш ніж використовувати його повторно.