<h2><imgsrc="../../images/apps-images/cli-app-icon_64.png"alt="cli-app-icon_64.png"width="64"height="64"/>Programmes en ligne de commande spécifiques à Haiku</h2>
<p>Vous trouverez tous les programmes en ligne de commande livrés avec Haiku soit
dans <spanclass="path">/boot/system/bin</span>, soit dans <spanclass="path">/boot/common/bin</span>.
Ces répertoires faisant tous partie de la variable PATH, l'emplacement d'un programme est donc automatiquement détecté.<br/> Ce qui suit n'est pas une liste exhaustive de tous les programmes en ligne de commande spécifiques à Haiku, mais juste un mise en évidence des quelques commandes les plus utiles pour vous en donnez un aperçu. N'hésitez pas à explorer le contenu du dossier <spanclass="path">bin/</span>. En exécutant un programme avec le paramètre <tt>--help</tt>, vous verrez comment utiliser cette commande, ainsi que le détail de toutes ses différentes options.</p>
<aid="cli-attributes"name="cli-attributes">Concernant les attributs : <spanclass="cli">listattr</span>, <spanclass="cli">catattr</span>, <spanclass="cli">addattr</span>, <spanclass="cli">rmattr</span>, <spanclass="cli">copyattr</span></a></h3>
<p>Ces commandes sont utilisées pour afficher, lire, ajouter et supprimer des attributs de fichiers. Rappelez-vous que ces méta-données ne sont actuellement disponibles que sur les volumes formatés en BFS. Si vous déplacez un fichier vers un autre systèmes de fichiers, vous perdrez tous les attributs !<br/>
Toutes ces commandes sont décrites dans le sujet consacré aux <ahref="../attributes.html#attributes-terminal">attributs dans le Terminal</a>.</p>
<aid="cli-index"name="cli-index">Concernant les index : <spanclass="cli">lsindex</span>, <spanclass="cli">mkindex</span>, <spanclass="cli">reindex</span>, <spanclass="cli">rmindex</span></a></h3>
<p>Avec ces commandes vous pouvez lister, créer, ré-indexer et retirer des attributs au mécanisme d'indexation BFS. Chaque volume a son propre index, souvenez-vous en quand copiez des fichiers d'un volume à l'autre.<br/>
Ces commandes sont décrites dans le sujet qui traite des <ahref="../index.html">Index</a>.</p>
<aid="cli-scripting"name="cli-scripting">Commandes utiles dans les scripts</a></h3>
<p>Voici quelques outils en ligne de commande qui sont particulièrement utiles pour les scripts (voir aussi le sujet sur <ahref="../bash-scripting.html">le Bash et les Scripts</a>).</p>
<tdvalign="top"><p><spanclass="cli">alert</span> invoque la fenêtre d'alerte typique avec une icône ad-hoc, un texte explicatif et jusqu'à trois boutons. le titre du bouton pressé sera renvoyé avec un code d'état (commençant à 0). Voici un exemple et son résultat :</p>
<tdvalign="top"><p><spanclass="cli">filepanel</span> affiche une boite de dialogue pour ouvrir ou enregistrer un fichier en permettant à l'utilisateur de choisir un fichier ou un emplacement. Vous obtiendrez comme valeur de retour, le fichier choisi ou le chemin du dossier.
Parmi les paramètres disponibles, vous pouvez définir un répertoire de départ, un titre de fenêtre, un nom par défaut pour le fichier à enregistrer ou des restrictions aux types de fichiers autorisés. En voici un exemple :</p>
<preclass="terminal">filepanel -s -t "Save your logfile" -d ~/config/settings -n Fantastic.log</pre>
<tdvalign="top"><p><spanclass="cli">waitfor</span> est une méthode élégante pour attendre qu'une application ou une tâche particulière soit démarrée, ou terminée.</p>
<tdvalign="top"><p><spanclass="cli">query</span> est la version ligne de commande de la fenêtre de recherche. En fait, une façon rapide de créer une expression de recherche, est de construire une requête dans la fenêtre de recherche, de basculer vers les formules (<spanclass="menu">by formula</span>), et de copier le tout entre doubles quottes (<tt>"</tt>) en paramètre à la commande <spanclass="cli">query</span> que vous appelez à partir du Terminal ou de votre script.</p></td></tr></table>
<td><p><spanclass="cli">checkfs</span> est un outil important pour détecter les erreurs dans votre système de fichiers. Il suffit d'ajouter le nom du volume ou du périphérique, et il va parcourir tous les fichiers et si possible, corriger des incohérences.</p>
<tdvalign="top"><p><spanclass="cli">open</span> est un petit outils très pratique pour ouvrir n'importe quel fichier avec son application préférée, ou pour démarrer une application particulière à partir de sa signature sans avoir besoin de connaître son emplacement exact. Ça fonctionne également avec les URLs, et même avec les dossiers "virtuels" <tt>.</tt> et <tt>..</tt> qui représentent respectivement le dossier courant et le dossier parent, qui seront ainsi ouvert dans le Tracker.</p></td></tr>
<tdvalign="top"><p><spanclass="cli">desklink</span> vous permet d'installer une icône dans le cartouche de la Deskbar à partir de n'importe quel fichier, dossier, requête ou application. Vous pourrez également pourvoir le menu contextuel d'actions spécifiques à exécuter quand vous ferez un clic droit sur l'icône.
Voici par exemple comment ajouter <spanclass="app">Screenshot</span> avec diverses options (le "<tt>\</tt>" à la fin de la première ligne sert juste au saut de ligne dans Terminal) :</p>