Pageferry
FAQ

Réponses au débogage Bash : codes de sortie, arguments et linters

05

Bases de Bash

En quoi le mode débogage de Bash aide-t-il lorsqu'un script échoue ?

L'option -x fait afficher par Bash chaque commande, avec ses arguments développés, juste avant son exécution, afin que vous voyiez exactement où le script a échoué. Vous le lancez avec bash -x script.sh dans WSL ou sur un système Linux que vous possédez, et -eu arrête l'exécution à la première erreur ou variable non définie. Dans Pageferry, la carte Shell rassemble cette trace avec le code de sortie réel.

Qu'est-ce qu'un linter Bash et quand dois-je l'exécuter ?

Un linter Bash est un programme séparé qui lit votre script sans l'exécuter et signale les erreurs probables, comme une variable non citée. Vous choisissez votre propre linter, l'installez dans WSL ou sur votre système Linux et demandez à l'agent de l'exécuter avec Shell. La carte affiche alors ses messages et son code de sortie. Un linter ne remplace pas un test d'exécution.

Comment passer des arguments à un script Bash ?

Les arguments sont les valeurs après le nom du script, par exemple bash script.sh un deux, et le script les lit via $1, $2, etc. $# contient le nombre, et "$@" contient tous les arguments en tant que mots séparés. Pour ajouter des indicateurs et arguments obligatoires, testez $# au début, affichez une ligne d'aide sur stderr et sortez avec le code 2. Arrêtez de passer des secrets en arguments de ligne de commande : d'autres utilisateurs les voient dans la liste des processus.

Que signifie le code de sortie 127 dans Bash ?

Un code de sortie de 127 signifie que la commande n'a pas été trouvée, généralement à cause d'une faute de frappe, d'un programme non installé ou d'un PATH qui ne l'inclut pas. Le shell affiche un message, et Pageferry affiche le même message et le numéro dans la carte Shell. Un script Bash lançant des applications avec des indicateurs doit vérifier le code de sortie de chaque application qu'il démarre.

Que signifie le code de sortie 126 dans Bash ?

Un code de 126 signifie que le fichier a été trouvé mais ne peut pas être exécuté, généralement parce qu'il manque le droit d'exécution ou qu'il n'est pas un programme. Pour votre propre script, chmod +x script.sh ajoute le droit, après quoi ./script.sh peut le lancer via la ligne shebang. Si vous n'êtes pas sûr, lancez d'abord bash script.sh et lisez le code de sortie dans la carte.

Utilisation de Pageferry

codedguru.com est-il le site officiel de Pageferry ?

Oui, codedguru.com est le site officiel de Pageferry. Le bouton de téléchargement fournit le programme d'installation original d'environ 34 Mo, et vous pouvez comparer sa somme de contrôle SHA-256 avec le manifeste publié avant de le lancer. Windows SmartScreen peut avertir car l'installateur n'est pas encore signé numériquement. Les questions sur l'application passent par le bouton Send feedback à l'intérieur de celle-ci.

L'agent peut-il fonctionner avec des scripts Bash sur un système Linux ?

Oui, via WSL sur votre propre PC ou via SSH vers un système Linux que vous possédez. Pageferry est lui-même une application pour Windows 10 et 11, vous discutez donc sur Windows, les outils de fichiers fonctionnent dans le dossier de travail du chat, et Shell exécute des commandes dans l'environnement que vous choisissez. N'utilisez que des machines que vous êtes autorisé à administrer, et testez d'abord sur une copie.

Les résultats sont-ils toujours exacts ?

Non. L'agent exécute les commandes et affiche la sortie réelle, mais un script peut toujours être incorrect, et un modèle peut mal interpréter le problème. Lisez chaque diff, exécutez le script avec des valeurs de test et vérifiez vous-même le code de sortie. Pageferry place les faits dans une carte ; la décision d'accepter une modification vous appartient, et une modification rejetée ne change rien.

Quelle est la différence entre Ask first et Plan only ?

Ask first est un mode dans lequel l'agent peut agir mais fait une pause avant chaque action qui modifie quelque chose, comme l'écriture d'un fichier, et pour une modification, vous voyez le diff et l'acceptez ou la rejetez. Plan only écrit un plan et n'exécute rien : aucune commande et aucun changement de fichier. Vous changez le mode pour exécuter le plan. Auto-run agit immédiatement.

Puis-je exécuter plusieurs tâches en parallèle ?

Oui, l'outil tâche démarre des sous-agents en parallèle, et dans un script Bash, vous pouvez démarrer des tâches concurrentes en arrière-plan avec & et utiliser wait. L'agrégation des codes de sortie est alors votre responsabilité : attendez chaque identifiant de processus et collectez son statut vous-même, car $? ne contient que le statut de la dernière commande. Testez un tel script sur votre propre machine.

Modèles, confidentialité et téléchargement

Mes fichiers quittent-ils le PC lorsque j'utilise un modèle cloud ?

Oui, avec un modèle cloud, l'invite, y compris le texte des fichiers que l'agent lit, est envoyée à ce fournisseur. Avec un modèle local, rien ne quitte la machine. Dans les deux cas, les chats, les dossiers de travail et les clés API restent sur le PC, et les secrets dans la sortie des outils sont masqués avant d'atteindre le modèle. Vous choisissez le point de terminaison, choisissez-le donc en fonction de votre script.

L'installateur est-il signé numériquement ?

Non, l'installateur n'est pas encore signé numériquement, donc Windows SmartScreen peut avertir lorsque vous le lancez. Comparez la somme de contrôle SHA-256 du fichier téléchargé avec le manifeste publié, puis choisissez Exécuter quand même sous Plus d'informations. Sous Windows, certutil -hashfile avec le chemin du fichier et SHA256 affiche la valeur à comparer.

Quelle est la taille du programme d'installation ?

34 Mo est la taille du programme d'installation que le bouton de téléchargement fournit. Un exécutable portable unique d'environ 25 Mo existe également, mais le bouton ne le fournit pas. Les deux sont conçus pour Windows 10 et 11, et la version actuelle est 2.9.26. Après l'installation, l'application affiche un bouton Mettre à jour lorsqu'une nouvelle version est prête.

Pageferry a-t-il besoin d'un compte ou d'une connexion réseau ?

Aucun compte n'est nécessaire pour exécuter l'application. Avez-vous besoin d'une connexion réseau dépend du modèle : un fournisseur d'IA cloud en a besoin, un modèle local non, et la recherche Web, les vérifications de mise à jour et le contrôle des chats depuis un navigateur de téléphone sont des fonctionnalités réseau optionnelles. Le contrôle téléphonique utilise une connexion sortante et peut être désactivé.

Pageferry pour Windows

Déboguez votre prochain script Bash avec un code de sortie visible

Télécharger Pageferry ↗