Как загрузить файл на Pastebin или аналогичный сервис из командной строки?

Вопрос или проблема

Я хочу иметь возможность вставлять из командной строки в pastebin (или аналогичный сервис), но, похоже, что pastebinit больше не работает:

ЭТОТ API ОТКЛЮЧЕН. Пожалуйста, используйте новый API Pastebin. http://pastebin.com/api

Вы можете. Используйте GitHub gist.

curl -X POST \--data-binary '{"files": {"file1.txt": {"content": "Hello, SO"}}}' \https://api.github.com/gists

Используйте этот скрипт:

#!/bin/bash

api_key=xxxxxxx-my-dev-API-key-xxxxxxx

curl -d "api_paste_code=$(jq -sRr @uri)" \
     -d "api_dev_key=$api_key" \
     -d 'api_option=paste' 'https://pastebin.com/api/api_post.php'

echo  # По умолчанию curl не печатает новую строку

Ответ или решение

Для того чтобы разместить файл на Pastebin или аналогичном сервисе из командной строки, вы можете воспользоваться несколькими подходами. Вот наиболее актуальные и рабочие методы:

1. Использование GitHub Gist

GitHub Gist предоставляет удобный API для публикации текстовых файлов. Для этого можно использовать curl. Ниже приведен пример команды:

curl -X POST \
  --data-binary '{"files": {"file1.txt": {"content": "Привет, мир!"}}}' \
  https://api.github.com/gists

Не забудьте заменить "Привет, мир!" на содержимое вашего файла.

2. Использование Pastebin с API

Сначала вам понадобится API ключ от Pastebin. Вы можете получить его, зарегистрировавшись на сайте и создав новый API ключ.

Пример скрипта на Bash для публикации на Pastebin:

#!/bin/bash

# Ваш API ключ
api_key="xxxxxxx-my-dev-API-key-xxxxxxx"

# Считываем содержимое файла, который хотите опубликовать
file_content=$(<your_file.txt)

# Публикуем содержимое на Pastebin
response=$(curl -s -d "api_paste_code=$(echo "$file_content" | jq -sRr @uri)" \
                -d "api_dev_key=$api_key" \
                -d "api_option=paste" \
                'https://pastebin.com/api/api_post.php')

# Выводим ссылку на созданный пост
echo "Ссылка на ваш пост: $response"

Замените your_file.txt на имя файла, который вы хотите опубликовать, а также api_key на ваш действительный API ключ от Pastebin.

Установка необходимых инструментов

Чтобы этот скрипт заработал, необходимо установить инструмент jq для обработки JSON. В большинстве дистрибутивов Linux вы можете установить его через менеджер пакетов:

# Для Debian/Ubuntu
sudo apt-get install jq

# Для Fedora
sudo dnf install jq

# Для macOS
brew install jq

Примечания

  1. Ограничения API: Ознакомьтесь с документацией Pastebin и GitHub Gist на предмет возможных ограничений на количество постов и размер загружаемых данных.

  2. Безопасность: Не храните ваш API ключ в публичных скриптах или репозиториях.

Следуя данным инструкциям, вы сможете эффективно размещать текстовые файлы на Pastebin или GitHub Gist из командной строки.

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

Капча загружается...