Chaque fois qu'il est nécessaire de partager les extraits de code en ligne, le premier qui nous vient probablement à l'esprit est Pastebin.com, le site de partage de texte en ligne lancé par Paul Dixon en 2002. Maintenant, il existe plusieurs services de partage de texte alternatifs disponibles pour télécharger et partager des extraits de texte, des journaux d'erreurs, des fichiers de configuration, la sortie d'une commande ou toute sorte de fichiers texte. Si vous partagez souvent votre code en utilisant divers services de type Pastebin, j'ai une bonne nouvelle pour vous. Dites bonjour à Wgetpaste , un utilitaire BASH en ligne de commande pour télécharger facilement des extraits de texte vers des services de type pastebin. À l'aide du script Wgetpaste, n'importe qui peut partager rapidement des extraits de texte avec ses amis, ses collègues ou toute personne souhaitant voir/utiliser/réviser le code à partir de la ligne de commande dans des systèmes de type Unix.
Installer Wgetpaste
Wgetpaste est disponible dans le référentiel Arch Linux [Community]. Pour l'installer sur Arch Linux et ses variantes comme Antergos et Manjaro Linux, il suffit d'exécuter la commande suivante :
$ sudo pacman -S wgetpaste
Pour les autres distributions, récupérez le code source du site Web Wgetpaste et installez-le manuellement comme décrit ci-dessous.
Téléchargez d'abord le dernier fichier tar Wgetpaste :
$ wget http://wgetpaste.zlin.dk/wgetpaste-2.28.tar.bz2
Extrayez-le :
$ tar -xvjf wgetpaste-2.28.tar.bz2
Il extraira le contenu du fichier tar dans un dossier nommé "wgetpaste-2.28".
Accédez à ce répertoire :
$ cd wgetpaste-2.28/
Copiez le binaire wgetpaste dans votre $PATH, par exemple /usr/local/bin/ .
$ sudo cp wgetpaste /usr/local/bin/
Enfin, rendez-le exécutable à l'aide de la commande :
$ sudo chmod +x /usr/local/bin/wgetpaste
Télécharger des extraits de texte vers des services de type Pastebin
Le téléchargement d'extraits de texte à l'aide de Wgetpaste est trivial. Laissez-moi vous montrer quelques exemples.
1. Télécharger des fichiers texte
Pour télécharger n'importe quel fichier texte à l'aide de Wgetpaste, exécutez simplement :
$ wgetpaste mytext.txt
Cette commande téléchargera le contenu du fichier mytext.txt.
Exemple de sortie :
Your paste can be seen here: https://paste.pound-python.org/show/eO0aQjTgExP0wT5uWyX7/
Importer des extraits de texte dans les services pastebin
Vous pouvez partager l'URL pastebin via n'importe quel support tel que courrier, message, WhatsApp ou IRC, etc. Quiconque possède cette URL peut la visiter et afficher le contenu du fichier texte dans le navigateur Web de son choix.
Voici le contenu du fichier mytext.txt dans le navigateur Web :
Affichage du contenu du pastebin via le navigateur
Vous pouvez également utiliser 'tee' commande pour afficher ce qui est collé, au lieu de les télécharger aveuglément.
Pour ce faire, utilisez -t comme ci-dessous.
$ wgetpaste -t mytext.txt
2. Téléchargez des extraits de texte vers différents services
Par défaut, Wgetpaste téléchargera les extraits de texte sur poundpython services.
Pour afficher la liste des services pris en charge, exécutez :
$ wgetpaste -S
Exemple de sortie :
Services supported: (case sensitive): Name: | Url: =============|================= bpaste | https://bpaste.net/ codepad | http://codepad.org/ dpaste | http://dpaste.com/ gists | https://api.github.com/gists *poundpython | https://paste.pound-python.org/
Ici, * indique le service par défaut.
Comme vous pouvez le voir, Wgetpaste prend actuellement en charge cinq services de partage de texte. Je ne les ai pas tous essayés, mais je pense que tous les services fonctionneront.
Pour télécharger le contenu vers d'autres services, par exemple bpaste.net , utilisez -s comme ci-dessous.
$ wgetpaste -s bpaste mytext.txt Your paste can be seen here: https://bpaste.net/show/5199e127e733
3. Lire l'entrée de stdin
Wgetpaste peut également lire l'entrée de stdin.
$ uname -a | wgetpaste
Cette commande téléchargera la sortie de la commande 'uname -a'.
4. Téléchargez la COMMANDE et la sortie de la COMMANDE ensemble
Parfois, vous devrez peut-être coller une COMMANDE et sa sortie. Pour ce faire, spécifiez le contenu de la commande entre guillemets comme ci-dessous.
$ wgetpaste -c 'ls -l'
Cela téléchargera la commande 'ls -l' avec sa sortie vers le service pastebin.
Cela peut être utile lorsque vous souhaitez que les autres sachent clairement quelle est la commande exacte que vous venez d'exécuter et son résultat.
Comme vous pouvez le voir dans la sortie, j'ai exécuté la commande 'ls -l'.
5. Téléchargez les fichiers journaux du système, les fichiers de configuration
Comme je l'ai déjà dit, nous pouvons télécharger n'importe quel type de fichiers texte, pas seulement un fichier texte ordinaire, dans votre système, tels que des fichiers journaux, la sortie d'une commande spécifique, etc. Supposons, par exemple, que vous venez de mettre à jour votre boîte Arch Linux et que vous vous retrouviez avec un système brisé. Vous demandez à votre collègue comment y remédier et il veut lire le fichier pacman.log. Voici la commande pour uploader le contenu du fichier pacman.log :
$ wgetpaste /var/log/pacman.log
Partagez l'URL pastebin avec votre collègue, afin qu'il examine le fichier pacman.log et puisse vous aider à résoudre le problème en consultant le fichier journal.
Généralement, le contenu des fichiers journaux peut être trop long et vous ne souhaitez pas tous les partager. Dans de tels cas, utilisez simplement cat commande pour lire la sortie et utiliser tail commande avec le -n basculez pour définir le nombre de lignes à partager et enfin dirigez la sortie vers Wgetpaste comme indiqué ci-dessous.
$ cat /var/log/pacman.log | tail -n 50 | wgetpaste
La commande ci-dessus téléchargera uniquement les 50 dernières lignes du fichier pacman.log.
6. Convertir l'URL d'entrée en tinyurl
Par défaut, Wgetpaste affichera l'URL pastebin complète dans la sortie. Si vous souhaitez convertir l'URL d'entrée en une petite URL, utilisez simplement -u option.
$ wgetpaste -u mytext.txt Your paste can be seen here: http://tinyurl.com/y85d8gtz
7. Définir la langue
Par défaut, Wgetpaste téléchargera des extraits de texte en texte brut .
Pour répertorier les langues prises en charge par le service spécifié, utilisez -L option.
$ wgetpaste -L
Cette commande répertorie toutes les langues prises en charge par le service par défaut, c'est-à-dire poundpython (https://paste.pound-python.org/).
Nous pouvons changer cela en utilisant -l option.
$ wgetpaste -l Bash mytext.txt
8. Désactiver la coloration syntaxique ou html dans la sortie
Comme je l'ai mentionné ci-dessus, les extraits de texte seront affichés dans un format de langue spécifique (texte brut, Bash, etc.).
Vous pouvez toutefois modifier ce comportement pour afficher les extraits de texte brut à l'aide de -r option.
$ wgetpaste -r mytext.txt Your raw paste can be seen here: https://paste.pound-python.org/raw/CUJhQ3jEmr2UvfmD2xCL/
Télécharger et afficher la sortie brute
Comme vous pouvez le voir dans la sortie ci-dessus, il n'y a pas de coloration syntaxique, pas de formatage html. Juste une sortie brute.
9. Modifier les valeurs par défaut de Wgetpaste
Toutes les valeurs par défaut (DEFAULT_{NICK,LANGUAGE,EXPIRATION}[_${SERVICE}] et DEFAULT_SERVICE)
peut être modifié globalement dans /etc/wgetpaste.conf ou par utilisateur dans ~/.wgetpaste.conf des dossiers. Ces fichiers, cependant, ne sont pas disponibles par défaut dans mon système. Je suppose que nous devons les créer manuellement. Le développeur a donné l'exemple de contenu pour les deux fichiers ici et ici . Créez simplement ces fichiers manuellement avec un exemple de contenu donné et modifiez les paramètres en conséquence pour modifier les valeurs par défaut de Wgetpaste.
10. Obtenir de l'aide
Pour afficher la section d'aide, exécutez :
$ wgetpaste -h