Présentation détaillée des outils CLI tiers intégrés à l’environnement local ServBay
ServBay, en tant que puissante solution de développement web local, embarque non seulement les serveurs web classiques, bases de données et environnements d’exécution de langages, mais propose aussi toute une sélection d’outils en ligne de commande tiers incontournables pour les développeurs. Ces utilitaires couvrent des domaines essentiels tels que le traitement d’images, la communication réseau, la compression/décompression, le chiffrement et la sécurité.
Ce guide détaille les outils CLI disponibles dans l’environnement ServBay, explique leurs usages principaux et fournit des exemples de base, afin que vous puissiez exploiter pleinement la facilité qu’offre ServBay au quotidien.
Pourquoi inclure ces outils dans ServBay ?
Dans le cadre du développement web, au-delà de la programmation, les développeurs sont régulièrement amenés à accomplir des tâches annexes telles que :
- Optimiser ou manipuler des ressources d’images.
- Tester des API ou déboguer des requêtes réseau.
- Gérer et manipuler des fichiers compressés.
- Générer ou administrer des certificats et clés SSL.
En intégrant ces outils de ligne de commande fréquemment utilisés, ServBay vous évite de devoir les installer et configurer séparément : ils sont accessibles directement dans une session terminal ServBay, accélérant sensiblement la productivité et la simplicité d’utilisation.
Prérequis
Avant d’utiliser les utilitaires en ligne de commande ci-dessous, veuillez vérifier que :
- ServBay est bien installé et exécuté sur votre système macOS.
- Vous accédez à l’environnement ServBay, soit via le terminal intégré, soit via un terminal système disposant des variables d’environnement ServBay, afin de pouvoir utiliser ces outils sans étapes supplémentaires.
Outils de traitement d’images
ServBay intègre plusieurs utilitaires de gestion d’image en ligne de commande, très utiles pour les développeurs front-end comme back-end en charge de ressources médias.
ImageMagick
ImageMagick est une suite d’outils en ligne de commande et de bibliothèques permettant la gestion de plus de 200 formats d’images. Elle sert à créer, modifier, assembler ou convertir des images bitmap.
Utilisation de base
Convertir un format d’image :
bashmagick convert input.jpg output.png
1Redimensionner une image :
bashmagick convert input.jpg -resize 300x300 output.jpg
1Ajouter un filigrane :
bashmagick convert input.jpg -gravity southeast -draw "text 10,10 'ServBay'" output.jpg
1
cwebp
cwebp, développé par Google, est un utilitaire CLI qui convertit les images vers le format WebP, un format moderne offrant généralement un meilleur taux de compression (avec ou sans perte) que JPEG ou PNG, tout en conservant une qualité visuelle équivalente, optimisant ainsi la vitesse de chargement des sites web.
Utilisation de base
Convertir un JPEG en WebP :
bashcwebp input.jpg -o output.webp
1Convertir un PNG en WebP :
bashcwebp input.png -o output.webp
1Définir la qualité de compression (ex : facteur de qualité 80) :
bashcwebp -q 80 input.jpg -o output.webp
1
jpegtran
jpegtran est un outil de conversion sans perte pour JPEG, permettant d’effectuer des opérations telles que la rotation, le retournement ou la transposition, sans décompression/recompression intermédiaire et donc sans perte supplémentaire de qualité.
Utilisation de base
Faire pivoter une image JPEG de 90 ° dans le sens horaire :
bashjpegtran -rotate 90 input.jpg > output.jpg
1Retournement horizontal d’une image JPEG :
bashjpegtran -flip horizontal input.jpg > output.jpg
1
djpeg
djpeg extrait les pixels natifs d’un fichier JPEG (en PPM, PGM, BMP ou Targa) - utile si vous avez besoin de manipuler les données brutes d’une image JPEG.
Utilisation de base
- Extraire en PPM à partir d’un JPEG :bash
djpeg input.jpg > output.ppm
1
cjpeg
cjpeg réalise l’opération inverse de djpeg : il compresse des images au format PPM, PGM, BMP ou Targa au format JPEG.
Utilisation de base
- Compresser un PPM en JPEG :bash
cjpeg input.ppm > output.jpg
1
img2webp
img2webp permet de générer un WebP animé à partir d’une série d’images statiques (PNG, JPEG, etc.).
Utilisation de base
- Assembler plusieurs images en un WebP animé :bash(Assurez-vous que les fichiers
img2webp -o output.webp frame1.png frame2.png frame3.png
1frame*.png
soient ordonnés dans la séquence désirée.)
Outils de communication réseau
cURL
cURL est un incontournable de la ligne de commande pour effectuer des transmissions de données via divers protocoles réseaux. Indispensable pour tester des API, télécharger des fichiers ou interagir avec des serveurs distants, cURL est fourni d’office dans l’environnement ServBay pour faciliter le débogage et la manipulation réseau.
Utilisation de base
Envoyer une requête HTTP GET à une API de test :
bashcurl -X GET https://api.servbay.demo/data
1Envoyer une requête HTTP POST accompagnée de données :
bashcurl -X POST -d "param1=value1¶m2=value2" https://api.servbay.demo/data
1Télécharger un fichier en conservant son nom d’origine :
bashcurl -O https://servbay.demo/file.zip
1Voir les en-têtes d’une requête et d’une réponse :
bashcurl -I https://servbay.demo
1
Outils de compression/décompression
ServBay propose un panel varié de solutions de compression et décompression usuelles, pour manipuler tous types de formats courants.
bzip2
bzip2 repose sur la transformation Burrows-Wheeler couplée au codage de Huffman, générant des fichiers plus compacts que gzip, au prix d’une rapidité légèrement inférieure en compression/décompression.
Utilisation de base
Compresser un fichier (remplace l’original par le fichier
.bz2
) :bashbzip2 input.txt
1Décompresser un fichier
.bz2
(remplace par le fichier d’origine) :bashbunzip2 input.txt.bz2
1Décompresser vers la sortie standard :
bashbzip2 -dc input.txt.bz2
1
gzip
gzip est l’un des outils de compression les plus répandus sous Unix/Linux, utilisant l’algorithme Lempel-Ziv (LZ77) pour un compromis efficace entre rapidité et compacité.
Utilisation de base
Compresser un fichier (remplace l’original par le fichier
.gz
) :bashgzip input.txt
1Décompresser un fichier
.gz
(remplace par le fichier d’origine) :bashgunzip input.txt.gz
1Décompresser vers la sortie standard :
bashgzip -dc input.txt.gz
1
xz
xz utilise l’algorithme LZMA2, offrant des taux de compression supérieurs à ceux de gzip et bzip2, au prix d’une compression plus lente mais d’une décompression rapide.
Utilisation de base
Compresser un fichier (remplace l’original par le fichier
.xz
) :bashxz input.txt
1Décompresser un fichier
.xz
(remplace par le fichier d’origine) :bashunxz input.txt.xz
1Décompresser vers la sortie standard :
bashxz -dc input.txt.xz
1
zstd
zstd (Zstandard) est un algorithme de compression/décompression conçu par Facebook, remarquablement rapide et performant : le compromis entre compacité et vitesse est excellent, la compression est bien plus rapide que gzip pour un taux au moins équivalent.
Utilisation de base
Compresser un fichier (remplace l’original par le fichier
.zst
) :bashzstd input.txt
1Décompresser un fichier
.zst
(remplace par le fichier d’origine) :bashunzstd input.txt.zst
1Décompresser vers la sortie standard :
bashzstd -dc input.txt.zst
1
Outils de chiffrement et sécurité
OpenSSL
OpenSSL est une boîte à outils open source complète pour l’implémentation de SSL (Secure Sockets Layer), TLS (Transport Layer Security) et de nombreuses fonctions cryptographiques. Dans ServBay, il est crucial pour générer des clés privées, des demandes de signature de certificat (CSR), manipuler les fichiers de certificats SSL, notamment lors de tests HTTPS locaux ou d’intégration avec les fonctionnalités SSL de ServBay (CA utilisateur ServBay ou ACME).
Utilisation de base
Générer une clé privée RSA (2048 bits) :
bashopenssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
1Extraire la clé publique à partir de la clé privée :
bashopenssl rsa -pubout -in private_key.pem -out public_key.pem
1Générer une demande de signature de certificat (CSR) :
bashopenssl req -new -key private_key.pem -out request.csr
1(À l’exécution, suivez les instructions pour renseigner les données du certificat : pays, organisation, nom commun, etc.)
Générer un certificat auto-signé (pour test local) :
bashopenssl req -x509 -days 365 -key private_key.pem -in request.csr -out certificate.crt
1(Remarque :
-in request.csr
suppose que vous avez déjà généré le CSR. Pour une solution tout-en-un clé + auto-signé, il existe des commandes encore plus compactes, à réserver à des tests simples.)Afficher les informations d’un certificat :
bashopenssl x509 -in certificate.crt -text -noout
1
Points à noter
- Les versions de ces utilitaires dépendent de la version intégrée par ServBay.
- Tous les outils sont accessibles directement en session terminal ; si ce n’est pas le cas, vérifiez la configuration de vos variables d’environnement (notamment PATH) ServBay.
Conclusion
ServBay ne se limite pas à un simple environnement local pour le développement web : il regroupe aussi un ensemble varié d’outils en ligne de commande pratiques, étoffant ses capacités pour vous permettre d’optimiser le traitement d’images, le débogage réseau, la gestion de fichiers et la sécurité. Maîtriser ces utilitaires intégrés vous aidera à renforcer votre productivité et la fluidité de votre workflow.