Запуск скриптів
Shell запускає ваш Bash-скрипт у WSL або через SSH і показує реальний код виходу в чаті.
Код виходу Bash — це число, яке повертає команда після завершення: 0 означає успіх, 1–255 — помилку. Pageferry запускає ваш скрипт через Shell, зчитує це число з реального процесу та виводить його в чат-картці поруч із виводом. Він також редагує файли і спочатку показує diff.
Shell запускає ваш Bash-скрипт у WSL або через SSH і показує реальний код виходу в чаті.
read_file та grep показують ваш скрипт у чаті, щоб ви могли знайти, де використовуються $1 та $2.
edit_file пропонує зміну і показує diff. У режимі Ask first він чекає на ваше підтвердження.
Кожна дія стає карткою в чаті. Shell повідомляє реальний код виходу, edit_file показує diff, а Ask first чекає на ваше підтвердження, перш ніж щось зміниться. Відкрийте картку, щоб прочитати повний вивід або повний diff.
bash check.sh a bexit 0bash check.shexit 2check.shreadexit3 matchesbash -n check.shexit 0Ви просите агент дізнатися, що станеться, коли check.sh отримає жодного аргумента. read_file відкриває скрипт, а Shell запускає bash check.sh без нічого після назви. Картка показує реальний вивід і код виходу, який дорівнює 2, якщо скрипт виводить рядок використання в стандартний потік помилок і завершується з exit 2. Код виходу Bash останньої команди зберігається в $?, а викликаючий бачить лише це число, тому скрипт, що завершується чітким кодом, легше тестувати, ніж той, що завжди повертає 1. Потім Shell запускає скрипт знову з двома значеннями, і картка має показати 0. Якщо коди здивують вас, прочитайте картку, а потім дозволяйте edit_file запропонувати виправлення в режимі Ask first і перегляньте diff.
Ви вводите «поясніть мені getopt», і агент відповідає простими словами: getopts — це вбудована функція Bash для коротких опцій, таких як -v або -f file, тоді як getopt — це окрема команда, яка також обробляє довгі опції, такі як --file, і поводиться інакше в різних системах. Потім read_file відкриває ваш скрипт, edit_file додає цикл getopts, і ви бачите diff. Shell запускає скрипт з -v, з -f та з неправильною опцією, і кожна картка має свій код виходу. Неправильна опція має завершуватися кодом 2, що є звичайним кодом для неправильного використання. Для кількох опцій достатньо циклу while з case та shift, тому запитайте цю версію, якщо ви її надаєте. Приймайте diff лише після того, як прочитали його.
Передача аргументів із пробілами в скрипт не працює, якщо значення не взяті в лапки, оскільки оболонка розбиває їх на окремі слова. Агент читає файл за допомогою read_file, знаходить неозначені $1 та $@, і edit_file пропонує взяти їх у подвійні лапки. Shell потім запускає скрипт із таким значенням, як "two words", і вивід показує, чи приходить воно як один рядок, чи як два. Одна з хитрощів керування аргументами командного рядка — це shift, який видаляє перше значення, щоб цикл міг обійти решту, і агент може додати його в тому ж diff. У режимі Ask first редагування чекає на вас. Перегляньте diff, знову запустіть тест і порівняйте два виводи самостійно.
Будь-хто, хто шукає «bash exit script», зазвичай шукає вбудовану функцію exit: exit N завершує скрипт зі статусом N, тоді як return N лише залишає функцію. Агент може додати set -eu та set -o pipefail на початку, щоб скрипт зупинявся при помилках та неініціалізованих змінних, а потім запускає файл з bash -n для перевірки синтаксису та з bash -x для виведення кожної команди. Якщо return не повертає статус останньої команди, між ними зазвичай виконується інша команда, оскільки $? зберігає лише код виходу найновішої. Картка Shell показує трасування. Прочитайте її зверху, порівняйте зі скриптом і вирішіть, чи залишати редагування.
Pageferry — це настільний додаток для Windows, а не хмарний сервіс або плагін. Він призначений лише для ваших власних файлів, вашого власного ПК та серверів, яким ви маєте право керувати. Ви тримаєте роботу в межах цього кола, оскільки агент не примушує до цього, а Shell, веб та SSH не обмежені робочою папкою. Код і результати можуть бути неправильними, тому читайте diff і тестуйте. Секрети, які з’являються у виводі інструментів, приховуються перед тим, як потрапити до моделі.