Kdykoli je potřeba sdílet úryvky kódu online, jako první nás pravděpodobně napadne Pastebin.com, online stránka pro sdílení textu, kterou spustil Paul Dixon v roce 2002. Nyní je k dispozici několik alternativních služeb pro sdílení textu pro nahrávání a sdílení textových úryvků, chybových protokolů, konfiguračních souborů, výstupu příkazu nebo jakéhokoli druhu textových souborů. Pokud náhodou sdílíte svůj kód často pomocí různých služeb typu Pastebin, mám pro vás dobrou zprávu. Pozdravte Wgetpaste , nástroj příkazového řádku BASH pro snadné nahrávání textových úryvků do služeb typu pastebin. Pomocí skriptu Wgetpaste může kdokoli rychle sdílet úryvky textu se svými přáteli, kolegy nebo komukoli, kdo chce vidět/použít/zkontrolovat kód z příkazového řádku v systémech podobných Unixu.
Instalace Wgetpaste
Wgetpaste je k dispozici v úložišti Arch Linux [Community]. Chcete-li jej nainstalovat na Arch Linux a jeho varianty, jako je Antergos a Manjaro Linux, stačí spustit následující příkaz:
$ sudo pacman -S wgetpaste
Pro jiné distribuce stáhněte zdrojový kód z webu Wgetpaste a nainstalujte jej ručně, jak je popsáno níže.
Nejprve si stáhněte nejnovější tar soubor Wgetpaste:
$ wget http://wgetpaste.zlin.dk/wgetpaste-2.28.tar.bz2
Rozbalte to:
$ tar -xvjf wgetpaste-2.28.tar.bz2
Rozbalí obsah souboru tar do složky s názvem "wgetpaste-2.28".
Přejděte do tohoto adresáře:
$ cd wgetpaste-2.28/
Zkopírujte binární soubor wgetpaste do své $PATH, například /usr/local/bin/ .
$ sudo cp wgetpaste /usr/local/bin/
Nakonec jej udělejte spustitelným pomocí příkazu:
$ sudo chmod +x /usr/local/bin/wgetpaste
Nahrání úryvků textu do služeb typu Pastebin
Nahrávání textových úryvků pomocí Wgetpaste je triviální. Dovolte mi ukázat vám několik příkladů.
1. Nahrajte textové soubory
Chcete-li nahrát libovolný textový soubor pomocí Wgetpaste, stačí spustit:
$ wgetpaste mytext.txt
Tento příkaz nahraje obsah souboru mytext.txt.
Ukázkový výstup:
Your paste can be seen here: https://paste.pound-python.org/show/eO0aQjTgExP0wT5uWyX7/
Nahrajte úryvky textu do služeb pastebin
Adresu URL pastebin můžete sdílet prostřednictvím jakéhokoli média, jako je e-mail, zpráva, WhatsApp nebo IRC atd. Kdokoli má tuto adresu URL, může ji navštívit a zobrazit obsah textového souboru ve webovém prohlížeči podle vlastního výběru.
Zde je obsah souboru mytext.txt ve webovém prohlížeči:
Zobrazení obsahu pastebin prostřednictvím prohlížeče
Můžete také použít 'tee' příkaz k zobrazení toho, co se vkládá, místo toho, abyste to slepě nahráli.
Chcete-li to provést, použijte -t možnost jako níže.
$ wgetpaste -t mytext.txt
2. Nahrávejte úryvky textu do různých služeb
Ve výchozím nastavení Wgetpaste nahraje textové úryvky do poundpythonu službu.
Chcete-li zobrazit seznam podporovaných služeb, spusťte:
$ wgetpaste -S
Ukázkový výstup:
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/
Zde, * označuje výchozí službu.
Jak můžete vidět, Wgetpaste aktuálně podporuje pět služeb pro sdílení textu. Nezkoušel jsem všechny, ale věřím, že všechny služby budou fungovat.
Chcete-li nahrát obsah do jiných služeb, například bpaste.net , použijte -s možnost jako níže.
$ wgetpaste -s bpaste mytext.txt Your paste can be seen here: https://bpaste.net/show/5199e127e733
3. Číst vstup ze stdin
Wgetpaste může také číst vstup ze stdin.
$ uname -a | wgetpaste
Tento příkaz nahraje výstup příkazu 'uname -a'.
4. Nahrajte COMMAND a výstup COMMAND společně
Někdy může být nutné vložit PŘÍKAZ a jeho výstup. Chcete-li tak učinit, zadejte obsah příkazu v uvozovkách, jak je uvedeno níže.
$ wgetpaste -c 'ls -l'
Tím se nahraje příkaz 'ls -l' spolu s jeho výstupem do služby pastebin.
To může být užitečné, když chcete ostatním dát jasně najevo, jaký byl přesný příkaz, který jste právě spustili, a jeho výstup.
Jak můžete vidět na výstupu, spustil jsem příkaz 'ls -l'.
5. Nahrajte soubory protokolů systému, konfigurační soubory
Jak jsem již řekl, do vašeho systému můžeme nahrát jakýkoli druh textových souborů, nejen obyčejný textový soubor, jako jsou soubory protokolu, výstup konkrétního příkazu atd. Řekněme například, že jste právě aktualizovali svůj box Arch Linux a skončili s rozbitý systém. Zeptáte se svého kolegy, jak to opravit, a on si chce přečíst soubor pacman.log. Zde je příkaz k nahrání obsahu souboru pacman.log:
$ wgetpaste /var/log/pacman.log
Sdílejte pastebin URL se svým kolegou, takže si prohlédne pacman.log a může vám pomoci problém vyřešit kontrolou souboru protokolu.
Obvykle může být obsah souborů protokolu příliš dlouhý a nechcete je všechny sdílet. V takových případech stačí použít cat příkaz k přečtení výstupu a použití ocasu pomocí -n přepněte, abyste definovali počet řádků ke sdílení, a nakonec výstup nasměrujte do Wgetpaste, jak je znázorněno níže.
$ cat /var/log/pacman.log | tail -n 50 | wgetpaste
Výše uvedený příkaz nahraje pouze posledních 50 řádků souboru pacman.log.
6. Převeďte vstupní adresu URL na tinyurl
Ve výchozím nastavení Wgetpaste zobrazí ve výstupu celou URL pastebin. Pokud chcete vstupní adresu URL převést na tinyurl, stačí použít -u možnost.
$ wgetpaste -u mytext.txt Your paste can be seen here: http://tinyurl.com/y85d8gtz
7. Nastavte jazyk
Ve výchozím nastavení bude Wgetpaste nahrávat textové úryvky v prostém textu .
Chcete-li zobrazit seznam jazyků podporovaných zadanou službou, použijte -L možnost.
$ wgetpaste -L
Tento příkaz zobrazí seznam všech jazyků podporovaných výchozí službou, tj. poundpython (https://paste.pound-python.org/).
Můžeme to změnit pomocí -l možnost.
$ wgetpaste -l Bash mytext.txt
8. Zakázat zvýraznění syntaxe nebo html ve výstupu
Jak jsem uvedl výše, textové úryvky se zobrazí ve specifickém jazykovém formátu (prostý text, Bash atd.).
Toto chování však můžete změnit tak, aby se úryvky nezpracovaného textu zobrazovaly pomocí -r možnost.
$ wgetpaste -r mytext.txt Your raw paste can be seen here: https://paste.pound-python.org/raw/CUJhQ3jEmr2UvfmD2xCL/
Nahrajte a zobrazte nezpracovaný výstup
Jak můžete vidět na výše uvedeném výstupu, není zde žádné zvýraznění syntaxe, žádné formátování html. Jen hrubý výstup.
9. Změňte výchozí nastavení Wgetpaste
Všechny výchozí hodnoty (DEFAULT_{NICK,LANGUAGE,EXPIRATION}[_${SERVICE}] a DEFAULT_SERVICE)
lze globálně změnit v /etc/wgetpaste.conf nebo na uživatele v ~/.wgetpaste.conf soubory. Tyto soubory však nejsou v mém systému standardně dostupné. Myslím, že je musíme vytvořit ručně. Vývojář poskytl ukázkový obsah obou souborů zde a zde . Jednoduše vytvořte tyto soubory ručně s daným ukázkovým obsahem a podle toho upravte parametry, abyste změnili výchozí nastavení Wgetpaste.
10. Získání nápovědy
Chcete-li zobrazit sekci nápovědy, spusťte:
$ wgetpaste -h