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.png1Redimensionner une image :
bashmagick convert input.jpg -resize 300x300 output.jpg1Ajouter un filigrane :
bashmagick convert input.jpg -gravity southeast -draw "text 10,10 'ServBay'" output.jpg1
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.webp1Convertir un PNG en WebP :
bashcwebp input.png -o output.webp1Définir la qualité de compression (ex : facteur de qualité 80) :
bashcwebp -q 80 input.jpg -o output.webp1
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.jpg1Retournement horizontal d’une image JPEG :
bashjpegtran -flip horizontal input.jpg > output.jpg1
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.ppm1
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.jpg1
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.png1frame*.pngsoient 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/data1Envoyer une requête HTTP POST accompagnée de données :
bashcurl -X POST -d "param1=value1¶m2=value2" https://api.servbay.demo/data1Télécharger un fichier en conservant son nom d’origine :
bashcurl -O https://servbay.demo/file.zip1Voir les en-têtes d’une requête et d’une réponse :
bashcurl -I https://servbay.demo1
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.txt1Décompresser un fichier
.bz2(remplace par le fichier d’origine) :bashbunzip2 input.txt.bz21Décompresser vers la sortie standard :
bashbzip2 -dc input.txt.bz21
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.txt1Décompresser un fichier
.gz(remplace par le fichier d’origine) :bashgunzip input.txt.gz1Décompresser vers la sortie standard :
bashgzip -dc input.txt.gz1
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.txt1Décompresser un fichier
.xz(remplace par le fichier d’origine) :bashunxz input.txt.xz1Décompresser vers la sortie standard :
bashxz -dc input.txt.xz1
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.txt1Décompresser un fichier
.zst(remplace par le fichier d’origine) :bashunzstd input.txt.zst1Décompresser vers la sortie standard :
bashzstd -dc input.txt.zst1
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:20481Extraire la clé publique à partir de la clé privée :
bashopenssl rsa -pubout -in private_key.pem -out public_key.pem1Générer une demande de signature de certificat (CSR) :
bashopenssl req -new -key private_key.pem -out request.csr1(À 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.crt1(Remarque :
-in request.csrsuppose 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 -noout1
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.
