Pageferry
Producto

Código de salida de Bash, salida del script y diffs en una tarjeta de chat

01

Un código de salida de Bash es el número que devuelve un comando al finalizar: 0 para éxito, 1 a 255 para fallo. Pageferry ejecuta tu script con Shell, lee ese número del proceso real y lo coloca en una tarjeta de chat junto a la salida. También edita archivos y muestra el diff primero.

01

Ejecutar scripts

Shell ejecuta tu script Bash en WSL o por SSH y muestra el código de salida real en el chat.

02

Leer archivos

read_file y grep muestran tu script en el chat, para que puedas encontrar dónde se usan $1 y $2.

03

Editar con diff

edit_file propone un cambio y muestra el diff. Con Ask first, espera tu aprobación.

Lo que puede hacer el agente

Cómo se ve una ejecución en el chat

Cada acción se convierte en una tarjeta en el chat. Shell reporta el código de salida real, edit_file muestra el diff, y Ask first espera tu aprobación antes de que algo cambie. Abre una tarjeta para leer la salida completa o el diff completo.

Cuatro tareas con códigos de salida y argumentos

Verificar el código de salida cuando falta un argumento

Le pides al agente que averigüe qué sucede cuando check.sh no recibe ningún argumento. read_file abre el script, y Shell ejecuta bash check.sh sin nada después del nombre. La tarjeta muestra la salida real y el código de salida, que es 2 si el script imprime su línea de uso en el error estándar y termina con exit 2. El código de salida del último comando está en $?, y quien llama al script solo ve ese número, por lo que un script que termina con un código claro es más fácil de probar que uno que siempre devuelve 1. Shell luego ejecuta el script nuevamente con dos valores, y la tarjeta debería mostrar 0. Si los códigos te sorprenden, lee la tarjeta, deja que edit_file proponga una corrección bajo Ask first y revisa el diff.

Analizar opciones con getopts

Escribes “explícame getopt” y el agente responde en palabras sencillas: getopts es un builtin de Bash para opciones cortas como -v o -f archivo, mientras que getopt es un comando separado que también maneja opciones largas como --file y se comporta de manera distinta entre sistemas. Luego read_file abre tu script, edit_file añade un bucle getopts y ves el diff. Shell ejecuta el script con -v, con -f y con una opción incorrecta, y cada tarjeta tiene su propio código de salida. Una opción incorrecta debería terminar con 2, el código habitual para uso incorrecto. Para un puñado de opciones, un bucle while con case y shift es suficiente, así que pide esa versión si la prefieres. Acepta el diff solo después de haberlo leído.

Mantener valores con espacios intactos

Pasar argumentos con espacios a un script falla cuando los valores no están entre comillas, porque el shell los divide en palabras separadas. El agente lee el archivo con read_file, encuentra el $1 y $@ sin comillas, y edit_file propone comillas dobles alrededor de ellos. Shell luego ejecuta el script con un valor como "dos palabras", y la salida muestra si llega como una línea o como dos. Uno de los trucos para gestionar argumentos de línea de comandos es shift, que elimina el primer valor para que un bucle pueda recorrer el resto, y el agente puede añadirlo en el mismo diff. Bajo Ask first, la edición espera tu aprobación. Revisa el diff, ejecuta la prueba nuevamente y compara las dos salidas tú mismo.

Detenerse ante errores con set -eu

Quien busca “bash exit script” suele estar buscando el builtin exit: exit N termina el script con el estado N, mientras que return N solo sale de una función. El agente puede añadir set -eu y set -o pipefail al principio, para que el script se detenga ante errores y variables sin definir, y luego ejecuta el archivo con bash -n para verificar la sintaxis y con bash -x para imprimir cada comando. Si return no está dando el estado del último comando, otro comando probablemente se ejecutó en medio, porque $? solo contiene el código de salida del más reciente. La tarjeta de Shell muestra la traza. Léela desde el principio, compárala con el script y decide si mantienes la edición.

Lo que Pageferry no hace

Pageferry es una aplicación de escritorio para Windows, no un servicio alojado ni un complemento. Está destinada solo a tus propios archivos, tu propia PC y servidores que tengas autorizado a administrar. Mantienes el trabajo dentro de ese ámbito, porque el agente no lo aplica, y Shell, web y SSH no están limitados a la carpeta de trabajo. El código y los resultados pueden ser incorrectos, así que lee el diff y prueba. Los secretos que aparecen en la salida de la herramienta se enmascaran antes de llegar al modelo.

Pageferry para Windows

Ejecuta tu próximo script Bash con un código de salida visible

Descargar Pageferry ↗