wgetpaste

Материал из Rosalab Wiki
Перейти к: навигация, поиск

wgetpaste — утилита, упрощающая публикацию текстовых файлов на pastebin-сервисах. Также умеет сохранять и вывод других команд..

Пример использования:

$ wgetpaste <some_file>

Зачем это надо

Если вы хоть раз были на разных форумах, посвященных Linux-тематике, наверняка вы видели сообщения от начинающих пользователей вида: «У меня все поломалось! Ничего не работает! Спасите-помогите!». Более опытные пользователи рады бы помочь, но обычно они просят на-посмотреть разные конфигурационные файлы. Тот, кому нужна помощь рад бы выложить файл - но не может, потому что может быть недоступен графический режим, невозможно смонтировать флешку и т. д. и т. п. wgetpaste решает эту проблему. Для его работы нужна только более-менее рабочая система и настроенная сеть с выходом вовне.

Используемые сервисы

По умолчанию, wgetpaste использует «родной» сервис zlin, но также умеет использовать и другие. Посмотреть список доступных сервисов можно так:

$ wgetpaste -S
  
  Services supported: (case sensitive):
  Name:   | Url:
  ========|=================
   ca     | http://pastebin.ca/
  *dpaste | http://dpaste.com/
   osl    | http://pastebin.osuosl.org/
   rafb   | http://rafb.net/paste/

Звездочкой отмечен сервис, который будет использоваться по умолчанию. Переопределить его можно либо с помощью опции командной строки -s:

 $ wgetpaste -s osl <some_file>

либо через редактирование конфигурационного файла. Лучше для этого использовать файл в своей домашней директории, который нужно назвать так: ~/.wgetpaste.conf . Если вам зачем-нибудь нужно будет переопределить умолчальный сервис, в конфигурационный файл нужно дописать, например, такую строку:

  DEFAULT_SERVICE="osl" 

Есди все сделано верно вывод предыдущей команды изменится:

 wgetpaste -S
 
 Services supported: (case sensitive):
  Name:   | Url:
  ========|=================
   ca     | http://pastebin.ca/
   dpaste | http://dpaste.com/
  *osl    | http://pastebin.osuosl.org/
   rafb   | http://rafb.net/paste/

Опции командной строки имеют приоритет над указанными в конфигурационном файле.

Подсветка синтаксиса

Иногда pastebin-сервисам необходимо подсказывать какую подсветку синтаксиса использовать. Это нужно для более наглядного представления файла, который вы выкладываете на сервис. Правильный режим подсветки позволит тому, кто будет просматривать файл, быстрее найти ошибку, понять как работает скрипт...

Посмотреть список доступных типов текстовых файлов, для которых wgetpaste и, что немаловажно, конкретный pastebin-сервис знают и умеют подсвечивать синтаксис можно командой:

wgetpaste -L

Languages supported by dpaste: http://dpaste.com/ (case sensitive):
   Apache Config
   Bash
   CSS
   Diff
   Django Template/HTML
   Haskell
   JavaScript
  *Plain Text
   Python
   Python Interactive/Traceback
   Ruby
   Ruby HTML (ERB)
   SQL
   XML

Обращаю внимание, что названия типов файлов регистрозависимы.

Переопределить используемую подсветку синтаксиса можно следующей строкой конфигурационного файла:

DEFAULT_LANGUAGE="Python"

или опцией -l командной строки:

wgetpaste -l «Plain Text»

Работа с буфером обмена

Пользователи какой-либо графической среды могут получить на 30% больше удовольствия от использования wgetpaste. Вы спросите почему? Потому что wgetpaste умеет работать с буфером обмена! Для этого используется пакет xclip (должен устанавливаться автоматически по зависимостям). Для помещения заданного текста на pastebin-сервис необходимо скопировать его в буфер обмена и вызвать команду:

wgetpaste -x

Для того, чтобы ссылка с результатом автоматически помещалась в буфер обмена после выполнения операции расшаривания надо использовать опцию -X.

Ленивые могут задать alias, путем добавления в ~/.bashrc следующей строки:

alias shareclip='wgetpaste -x -X'

Примечание! Чтоб новый alias заработал, необходимо выйти из системы и зайти в нее. Либо просто открыть новый терминал, в котором все уже будет работать.

Теперь просто копируем текст в буфер обмена и вызываем команду shareclip.

Публикация вывода команды

Для этого надо использовать опцию -c <команда>, например:

wgetpaste -c cal

Лицензия на wgetpaste

Public domain - с данным скриптом можно делать все, что заблагорассудится.

Использованные источники