Ruby est un langage de programmation puissant et polyvalent, souvent utilisé pour le développement web, l'automatisation des tâches et bien plus encore. L'une des fonctionnalités les plus utiles de Ruby est sa capacité à gérer les options de ligne de commande, ce qui permet aux développeurs de créer des applications CLI (Command Line Interface) interactives et conviviales. Dans cet article, nous allons explorer comment utiliser les options de ligne de commande dans Ruby, en fournissant des exemples pratiques et des conseils pour vous aider à démarrer.
Une interface en ligne de commande (CLI) est un moyen d'interagir avec un programme informatique en tapant des commandes dans un terminal ou une console. Contrairement aux interfaces graphiques (GUI), qui utilisent des éléments visuels pour interagir avec l'utilisateur, les CLI reposent sur du texte. Cela peut sembler intimidant au début, mais les CLI offrent souvent plus de flexibilité et de puissance pour les utilisateurs avancés.
Les options de ligne de commande permettent aux utilisateurs de personnaliser le comportement d'un programme en fournissant des arguments lors de son exécution. Cela peut inclure des paramètres tels que :
En offrant des options de ligne de commande, vous permettez à vos utilisateurs de tirer le meilleur parti de votre application, en l'adaptant à leurs besoins spécifiques.
Ruby propose plusieurs bibliothèques pour gérer les options de ligne de commande, mais l'une des plus populaires est la bibliothèque intégrée OptionParser
. Cette bibliothèque facilite la définition et l'analyse des options de ligne de commande. Voyons comment l'utiliser.
Avant de commencer, assurez-vous d'avoir Ruby installé sur votre machine. Vous pouvez vérifier cela en exécutant la commande suivante dans votre terminal :
ruby -v
Si Ruby est installé, vous verrez la version de Ruby affichée. Sinon, vous pouvez télécharger et installer Ruby depuis le site officiel.
Voici un exemple simple d'utilisation de OptionParser
pour gérer les options de ligne de commande dans une application Ruby :
require 'optparse'
options = {}
OptionParser.new do |opts|
opts.banner = "Usage: mon_programme.rb [options]"
opts.on("-f", "--fichier FICHIER", "Spécifiez le fichier d'entrée") do |f|
options[:fichier] = f
end
opts.on("-o", "--output SORTIE", "Spécifiez le fichier de sortie") do |o|
options[:sortie] = o
end
opts.on("-v", "--verbose", "Activez le mode verbeux") do
options[:verbose] = true
end
opts.on("-h", "--help", "Affiche l'aide") do
puts opts
exit
end
end.parse!
puts "Fichier d'entrée : #{options[:fichier]}" if options[:fichier]
puts "Fichier de sortie : #{options[:sortie]}" if options[:sortie]
puts "Mode verbeux activé" if options[:verbose]
Dans cet exemple, nous avons défini plusieurs options :
-f
ou --fichier
: pour spécifier le fichier d'entrée.-o
ou --output
: pour spécifier le fichier de sortie.-v
ou --verbose
: pour activer le mode verbeux.-h
ou --help
: pour afficher l'aide.Lorsque vous exécutez ce programme, vous pouvez passer des options comme suit :
ruby mon_programme.rb -f input.txt -o output.txt -v
Il est important de gérer les erreurs lors de l'analyse des options de ligne de commande. Par exemple, si un utilisateur oublie de spécifier un fichier d'entrée, vous pouvez afficher un message d'erreur approprié. Voici comment vous pouvez le faire :
if options[:fichier].nil?
puts "Erreur : Vous devez spécifier un fichier d'entrée."
puts opts
exit 1
end
Maintenant que nous avons couvert les bases, examinons quelques exemples plus avancés de l'utilisation de OptionParser
.
Vous pouvez également définir des options qui acceptent plusieurs arguments. Par exemple, si vous souhaitez permettre à l'utilisateur de spécifier plusieurs fichiers d'entrée, vous pouvez le faire comme suit :
opts.on("-f", "--fichiers FICHIERS", Array, "Spécifiez les fichiers d'entrée") do |fichiers|
options[:fichiers] = fichiers
end
Avec cette option, l'utilisateur peut passer plusieurs fichiers comme ceci :
ruby mon_programme.rb -f fichier1.txt,fichier2.txt,fichier3.txt
Il est également possible de définir des valeurs par défaut pour vos options. Cela peut être utile si vous souhaitez que certaines options aient des valeurs prédéfinies si l'utilisateur ne les spécifie pas. Voici un exemple :
options[:sortie] = "sortie.txt" # Valeur par défaut
opts.on("-o", "--output SORTIE", "Spécifiez le fichier de sortie") do |o|
options[:sortie] = o
end
Dans cet exemple, si l'utilisateur ne spécifie pas de fichier de sortie, le programme utilisera "sortie.txt" par défaut.
Vous pouvez également personnaliser le message d'aide affiché lorsque l'utilisateur demande de l'aide. Cela peut être fait en modifiant le texte de la bannière :
opts.banner = "Usage: mon_programme.rb [options]\n\nOptions disponibles :\n"
Les options de ligne de commande sont un excellent moyen d'améliorer l'interaction de vos utilisateurs avec vos applications Ruby. En utilisant la bibliothèque OptionParser
, vous pouvez facilement gérer les options et les arguments, offrant ainsi une expérience utilisateur plus riche et personnalisée.
Nous avons couvert les bases de l'utilisation de OptionParser
, y compris la définition d'options, la gestion des erreurs et des exemples avancés. Avec ces connaissances, vous êtes maintenant prêt à créer vos propres applications CLI en Ruby. N'hésitez pas à expérimenter et à ajouter des fonctionnalités supplémentaires pour rendre vos programmes encore plus puissants et conviviaux.
Amusez-vous bien avec Ruby et bonne programmation !
© 2024 RailsInsights. All rights reserved.