Une alternative moderne à la commande Unix type
kind est une commande shell moderne qui permet d’inspecter en détail la nature d’une commande Unix. Elle fournit des informations structurées et lisibles sur :
- Le type de la commande (alias, mot-cle du shell, builtin, binaire, script)
- Sa localisation
- Les alias associés
- etc ...
Utile pour comprendre rapidement ce qu’est réellement une commande, que ce soit pour le débogage, l’apprentissage ou l’écriture de scripts.
$ kind ls
Command : ls
Location : /bin/ls
Type : binaire
Alias : alias ls='ls --color=auto'
- Cloner le dépôt
git clone https://github.com/Jukoo/kind.git cd kind
- Compiler le project (avec Meson)
meson setup build meson compile -C build
- Vous pouvez installer ou le desinstaller le projet en local
meson install -C build # pour installer
ninja -C build uninstall # pour desinstaller
Aucune dépendance externe.
- Détection précise du type de commande : alias, mot-cle du shell,builtin,binaire ,script
- Affichage structuré et lisible
- Compatible avec la plupart des shells
- Idéal pour : le debug, les scripts, ou l’apprentissage du shell
Commande | Sortie de type |
Sortie de kind |
---|---|---|
type ls |
ls is aliased to 'ls --color=auto' |
Affichage structuré avec chemin, alias, etc. |
type cd |
cd is a shell builtin |
Plus lisible et détaillé |
type foo |
-bash: type: foo: not found |
Message d’erreur clair et explicite |
kind
va plus loin que la simple commande type
en offrant un affichage structuré et des indices utiles.
Commande | Sortie de type |
---|---|
type ldd |
ldd is /usr/bin/ldd |
Commande | Sortie de kind |
---|---|
kind ldd |
Command: ldd |
Location : /usr/bin | |
Type : [:script:] | |
Hint : Please use 'file' command to investigate further |
type
se contente d’afficher l’emplacement ou le statut général de la commande.kind
va plus loin :- détecte et précise qu’il s’agit potentiellement d’un script (pas seulement d’un binaire),
- affiche un format structuré et lisible (command, location, type),
- fournit des indices contextuels (“Hint”) pour aller plus loin (ici suggérer
file
pour inspecter le contenu du script).
En résumé, kind ne se limite pas à dire où se trouve la commande, il aide à comprendre ce qu’elle est vraiment.
kind <commande>
Warning
Étant donné que l'environnement de développement de cette commande a été entièrement créé à l'aide de bash, le comportement peut varier légèrement selon le shell utilisé (zsh, fish, etc...), si plusieurs alias sont chaînés, seul le premier niveau peut être affiché.
Important
Le nom kind peut entrer en conflit avec l’outil Kubernetes kind sur certaines machines
*Suggestions ou des Améliorations via des issues ou pull requests sur le dépôt.