Skripte ausführen
Shell führt Ihr Bash-Skript in WSL oder über SSH aus und zeigt den echten Exitcode im Chat an.
Ein Bash-Exitcode ist die Zahl, die ein Befehl am Ende zurückgibt: 0 für Erfolg, 1 bis 255 für Fehler. Pageferry führt Ihr Skript mit Shell aus, liest die Zahl aus dem echten Prozess und zeigt sie in einer Chat-Karte neben der Ausgabe. Es bearbeitet auch Dateien und zeigt den Diff zuerst an.
Shell führt Ihr Bash-Skript in WSL oder über SSH aus und zeigt den echten Exitcode im Chat an.
read_file und grep zeigen Ihr Skript im Chat an, damit Sie finden können, wo $1 und $2 verwendet werden.
edit_file schlägt eine Änderung vor und zeigt den Diff. Unter Ask first wartet es auf Ihre Bestätigung.
Jede Aktion wird zu einer Karte im Chat. Shell meldet den echten Exitcode, edit_file zeigt einen Diff, und Ask first wartet auf Ihre Bestätigung, bevor sich etwas ändert. Öffnen Sie eine Karte, um die vollständige Ausgabe oder den vollständigen Diff zu lesen.
bash check.sh a bexit 0bash check.shexit 2check.shreadexit3 matchesbash -n check.shexit 0Sie bitten den Agenten herauszufinden, was passiert, wenn check.sh kein Argument erhält. read_file öffnet das Skript, und Shell führt bash check.sh ohne weitere Argumente aus. Die Karte zeigt die echte Ausgabe und den Exitcode, der 2 ist, wenn das Skript seine Verwendungsmeldung auf standard error ausgibt und mit exit 2 endet. Der Bash-Exitcode des letzten Befehls steht in $?, und der Aufrufer sieht nur diese Zahl, daher ist ein Skript, das mit einem klaren Code endet, einfacher zu testen als eines, das immer 1 zurückgibt. Shell führt das Skript dann erneut mit zwei Werten aus, und die Karte sollte 0 anzeigen. Wenn Sie von den Codes überrascht sind, lesen Sie die Karte, lassen Sie dann edit_file unter Ask first eine Korrektur vorschlagen und prüfen Sie den Diff.
Sie geben „getopts erklären“ ein, und der Agent antwortet in einfachen Worten: getopts ist ein Bash-Builtin für kurze Optionen wie -v oder -f Datei, während getopt ein separates Kommando ist, das auch lange Optionen wie --file verarbeitet und sich zwischen Systemen unterschiedlich verhält. Dann öffnet read_file Ihr Skript, edit_file fügt eine getopts-Schleife hinzu, und Sie sehen den Diff. Shell führt das Skript mit -v, mit -f und mit einer falschen Option aus, und jede Karte hat ihren eigenen Exitcode. Eine falsche Option sollte mit 2 enden, dem üblichen Code für falsche Verwendung. Für eine Handvoll Optionen reicht eine while-Schleife mit case und shift, also fragen Sie nach dieser Version, wenn Sie sie bevorzugen. Akzeptieren Sie den Diff erst, nachdem Sie ihn gelesen haben.
Das Übergeben von Argumenten mit Leerzeichen an ein Skript schlägt fehl, wenn die Werte nicht in Anführungszeichen gesetzt sind, da die Shell sie in separate Wörter aufteilt. Der Agent liest die Datei mit read_file, findet die nicht in Anführungszeichen gesetzten $1 und $@, und edit_file schlägt doppelte Anführungszeichen um sie vor. Shell führt das Skript dann mit einem Wert wie „two words“ aus, und die Ausgabe zeigt, ob es als eine Zeile oder als zwei Zeilen ankommt. Einer der Tricks zur Verwaltung von Befehlszeilenargumenten ist shift, das den ersten Wert entfernt, damit eine Schleife durch den Rest gehen kann, und der Agent kann ihn im selben Diff hinzufügen. Unter Ask first wartet die Bearbeitung auf Sie. Überprüfen Sie den Diff, führen Sie den Test erneut aus und vergleichen Sie die beiden Ausgaben selbst.
Jeder, der nach „bash exit script“ sucht, sucht normalerweise nach dem exit-Befehl: exit N beendet das Skript mit Status N, während return N nur eine Funktion verlässt. Der Agent kann set -eu und set -o pipefail oben hinzufügen, damit das Skript bei Fehlern und bei nicht gesetzten Variablen stoppt, und dann führt er die Datei mit bash -n für eine Syntaxprüfung und mit bash -x aus, um jeden Befehl zu drucken. Wenn return nicht den Status des letzten Befehls angibt, lief normalerweise ein anderer Befehl dazwischen, da $? nur den Exitcode des neuesten Befehls enthält. Die Shell-Karte zeigt den Trace. Lesen Sie ihn von oben, vergleichen Sie ihn mit dem Skript und entscheiden Sie, ob die Bearbeitung bleibt.
Pageferry ist eine Desktop-App für Windows, kein gehosteter Dienst oder ein Plugin. Sie ist nur für Ihre eigenen Dateien, Ihren eigenen PC und Server gedacht, die Sie verwenden dürfen. Sie halten die Arbeit in diesem Umfang, da der Agent dies nicht durchsetzt, und Shell, Web und SSH sind nicht auf den Arbeitsordner beschränkt. Code und Ergebnisse können falsch sein, also lesen Sie den Diff und testen Sie. Geheimnisse, die in der Tool-Ausgabe erscheinen, werden maskiert, bevor sie das Modell erreichen.