Wgetpaste

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

Утилита, публикующая текстовые файлы или вывод команд на pastebin-сервисах.

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

 $ wgetpaste <some_file>


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

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

Ссылки


Установка

В графическом окружении
В dnfdragora найдите пакет wgetpaste и установите его.
Через терминал
В терминале наберите следующую команду: sudo dnf in wgetpaste

Не можете найти нужный пакет? Проверьте, правильно ли подключены репозитории.

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

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

 [stas@stas-HP2740p-grey drive_c]$ wgetpaste -S
 Services supported: (case sensitive):
   Name:        | Url:
   =============|=================
    bpaste      | http://bpaste.net/
    ca          | http://pastebin.ca/
    codepad     | http://codepad.org/
    dpaste      | http://dpaste.com/
   *gists       | https://api.github.com/gists
    mandriva    | http://pastebin.mandriva.com/
    poundpython | http://paste.pound-python.org/

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

  $ wgetpaste -s ca <some_file>

либо через редактирование конфигурационного файла.

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

  DEFAULT_SERVICE="ca" 

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

 wgetpaste -S
 
 Services supported: (case sensitive):
  Name:   | Url:
  ========|=================
  *ca     | http://pastebin.ca/
   dpaste | http://dpaste.com/
   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