Pastebin из консоли. Просто и удобно.


Стал часто пользоваться сервисом pastebin и добавлять свои заметки через браузер руками быстро надоело.
Поискал и нашел в репозитории программку pastebinit — не устроила из-за ограничений по работе с pastebin-сервисами (чтобы добавили новый сервис — надо написать автору и ждать-ждать-ждать — не очень интересно), тем более, что я как раз на хостинге сделал свой сервис на стандартном движке pastebin, чтобы не иметь проблем с кодировкой (pastebin по умолчанию работает не в unicode), да и просто из интереса.

Приведу ниже шапку скрипта (посмотреть полностью и скачать pastebinput):

#!/usr/bin/perl
#===============================================================================
#  DESCRIPTION:  Простая отправлялка вывода команды или тела файла на pastebin. Определяет подсветку
#                для некоторых видов указанных через -i файлов.
#
#        USAGE:  cat file.txt | pastebinput.pl или pastebinput.pl -i file.txt
#
#      OPTIONS:  -i <input_file>; -u <server_url>; -s <syntax>; -e <expire=[f,m,d]>; -r <remember=[0,1]>; -n <name>
#       AUTHOR:  dimio
#          URL:  http://dimio.org
#      VERSION:  0.9
#      CREATED:  2010-01-31
#===============================================================================

Справка к скрипту:

    Использование: pastebinput [КЛЮЧ]... <-i input_file> (1-я форма)
              или: COMMAND | pastebinput                 (2-я форма)
    В первой форме на сервер будет отправлен указанный файл input_file.
    Во второй форме на сервер будет отправлен результат вывода COMMAND.
    Ключи:
            -s  [text, perl, ...]      Синтаксис файла для подсветки на pastebin;
            -u  [http://server.com]    URL сервера (для отличных от pastebin.org);
            -e  [d, m, f]              Срок хранения данных на сервере:
                                       d - один день, m - месяц, f - постоянно;
            -i  [input_file]           Имя входящего файла, текст которого будет
                                       отправлен на pastebin сервер;
            -n  [username]             Имя отправителя (иначе - anonimous);
            -r                         Помнить отправителя (если установлена);
            -h                         Вывод данной справки и завершение программы;
    Пример использования: pastebinput -r -s perl -e m -n User -i ./test.pl

Далее создаём ссылку для запуска скрипта:
ln -s /home/user/scripts/pastebinput.pl /usr/local/bin/pastebinput
В .bashrc (подробнее можно посмотреть в записи про мой bashrc) добавил alias с нужными настройками для вызова:
alias pbout='pastebinput -u http://pastebin.dimio.org -n dimio -r'
(можно дописать в конце правила, чтобы в буфер обмена сразу попадала ссылка на отправленные данные, следующее: | xclip или | xsel -i -b, но тогда перестаёт работать отправка тела указанного файла, данные получаемые по второй форме вызова — через конвеер, — такой проблемы не имеют).



Category Рубрики: *NIX, Кодинг, Новости | Tag Метки: , , , | Comments Комментариев нет »

Добавить комментарий