Le projet Picobat (anciennement Dos9) est un projet d'interpréteur de commandes libre dédié à la programmation batch (fichiers MS-DOS .bat). Il propose également des fonctionnalités non présentes dans cmd.exe, comme le support des nombres décimaux.

Picobat

Description de cette image, également commentée ci-après
Capture d'écran de Dos9 v216.1 sur Microsoft Windows.
Informations
Créateur Romain Garbi
Développé par Romain Garbi, Teddy Astie, Mike Gautier [1].
Fichiers exécutables pbat, pbatize et tea
Première version
Dernière version v216.1[2] ()
Version avancée v221.06
Dépôt https://github.com/darkbatcher/picobat
État du projet Actif
Écrit en C
Environnement Microsoft Windows, POSIX
Langues Français, Anglais
Type Gratuit (libre)
Licence Licence publique générale GNU
Documentation http://picobat.org/doc.html
Site web http://picobat.org

Cet interpréteur de commandes fonctionne dans les environnements Microsoft Windows et POSIX[3]. Il peut constituer une alternative à cmd.exe.

Objectifs modifier

Le projet Picobat a plusieurs objectifs[3] :

  • la liberté : support d'un maximum de plateformes ;
  • la compatibilité : une certaine compatibilité avec cmd.exe ;
  • la rapidité : plus rapide que cmd.exe ;
  • la légèreté : simple à déployer.

Extensions de Picobat modifier

Afin de rendre la programmation en batch moins limitée et plus simple, le projet Picobat ajoute diverses fonctionnalités au langage .bat.

Commandes internes étendues modifier

goto modifier

Sous Picobat, la commande "« goto » peut rechercher l'étiquette dans un fichier spécifié, également, le commutateur "/Q" permet de désactiver l'affichage d’erreur en cas d'étiquette introuvable[4].

GOTO [:]étiquette [fichier] [/Q]

set /a modifier

Dans le projet Picobat, la commande « set » peut effectuer des calculs avec des nombres entiers[5] mais également avec des nombres décimaux[6] ; le mode FLOATS permet de calculer par défaut avec des nombres décimaux, si ce mode est activé, tous les calculs s'effectuant avec des nombres décimaux, à l'inverse, avec des nombres entiers[7].


Il est également possible de forcer le calcul avec des nombres entiers ou des nombres décimaux en modifiant le commutateur "« /a ».

:: Calcul avec des nombres entiers
set /a:i variable=expression

:: Calcul avec des nombres décimaux
set /a:f variable=expression

Par ailleurs, les expressions peuvent contenir plus d'opérateurs :

if modifier

La commande « if » en plus de supporter les nombres entiers, supporte les nombres décimaux. La comparaison FEQ permet de comparer avec une précision de 10^-13 les nombres décimaux, alors que la comparaison traditionnelle EQU n'a pas de limite de précision[8].

Commandes externe intégrées modifier

find modifier

Sur Picobat, la commande « find » est directement intégrée à l'interpréteur et n'est pas offerte séparément, à l'inverse de cmd.exe.

Commandes externe fournies modifier

Picobat développe et fournit diverses commandes utiles qui ne sont pas nécessairement présentes sur cmd.exe.

pbatize modifier

Cette commande permet de remplacer certains passages dans des programmes Batch pour corriger certains soucis (en particulier avec certains arguments non espacés).

dump modifier

Cette commande permet d'afficher dans divers formats (hexadécimal, octal, décimal) des fichiers[9].

Elle est utilisée pour, par exemple, générer des codes permettant d'embarquer des fichiers dans un fichier texte.

tea modifier

« tea » est un préprocesseur de texte notamment utilisé dans la documentation et l'aide de Picobat[10].

iconv modifier

« iconv » permet de convertir un texte entre plusieurs encodages, elle n'est pas fournie sur Linux comme elle est généralement déjà présente dans le système.

Notes et références modifier

  1. (en) « Dos9/Code ».
  2. (en) « Dos9 - Browse /Dos9-2016.1 at SourceForge.net », sur sourceforge.net (consulté le ).
  3. a et b « Le Projet Dos9 : Accueil », sur dos9.org (consulté le ).
  4. « Le Projet Dos9 :: Commande GOTO », sur dos9.org (consulté le ).
  5. a et b « Le Projet Dos9 :: Commande SET (/A)(entiers) », sur dos9.org (consulté le ).
  6. a et b « Le Projet Dos9 :: Commande SET (/A)(flotants) », sur dos9.org (consulté le ).
  7. « Le Projet Dos9 :: Commande SET », sur dos9.org (consulté le ).
  8. « Le Projet Dos9 :: Commande IF », sur dos9.org (consulté le ).
  9. « Le Projet Dos9 :: Commande DUMP », sur dos9.org (consulté le ).
  10. « Le Projet Dos9 :: Commande TEA », sur dos9.org (consulté le ).

Annexes modifier

Liens externes modifier

Voir aussi modifier