Maneira fácil de colar a saída da linha de comando para colar serviços de bin?

34

Existe alguma ferramenta de linha de comando no Linux que permite publicar resultados de comandos ou arquivos de texto diretamente em um serviço de compartilhamento, como o pastebin.com?

    
por slm 09.01.2014 / 06:15

7 respostas

33

Existem vários serviços que fornecem isso, mas 2 que são muito fáceis de usar na linha de comando são fpaste e pastebinit . Estas duas ferramentas ligam aos sites, paste.fedoraproject.org e pastebin.com .

fpaste

NOTA: Esta é uma opção somente do Fedora / CentOS / RHEL

Se você estiver usando qualquer uma das distribuições baseadas no Red Hat, você pode instalar o pacote fpaste , que lhe dá uma ferramenta de linha de comando para postar conteúdo em paste.fedoraproject.org .

Comandos básicos

Para postagem básica de um único arquivo de texto, você pode fazer o seguinte.

$ fpaste hello_unixnlinux.txt 

O comando acima retornará uma URL em que seu conteúdo agora pode ser acessado por outras pessoas.

...
Uploading (0.1KiB)...
http://ur1.ca/gddtt -> http://paste.fedoraproject.org/66894/89230131

Outros comandos

Há, claro, toda uma série de outras opções.

  • colar a área de transferência: fpaste -i
  • cole informações do sistema: fpaste --sysinfo
  • execução seca: 'fpaste --printonly somefile.txt

Veja a página man, man fpaste para mais detalhes.

pastebinit

Esta é provavelmente a mais popular das duas ferramentas. É suportado na maioria das distros que frequento, como o Fedora, o CentOS e o Ubuntu, só para citar alguns. Ele tem recursos semelhantes ao fpaste , mas você pode fazer muito mais com ele, por exemplo:

lista de serviços

Para começar, podemos obter uma lista de todos os URLs "suportados" por meio da opção -l .

$ pastebinit -l
Supported pastebins:
- cxg.de
- fpaste.org
- p.defau.lt
- paste.debian.net
- paste.drizzle.org
- paste.kde.org
- paste.openstack.org
- paste.pocoo.org
- paste.pound-python.org
- paste.ubuntu.com
- paste.ubuntu.org.cn
- paste2.org
- pastebin.com
- pastie.org
- pb.daviey.com
- slexy.org
- sprunge.us

Se você não se incomodar em selecionar um usando a opção -b , ele escolherá um baseado em sua distro, supondo que haja um para ele, caso contrário, volte para pastebin.com. Observe que ele também suporta fpaste.org , para o Fedora, então você pode usar essa ferramenta para cobrir também esse serviço de colagem.

Publicando um arquivo de texto simples

Para postar um arquivo de amostra em pastebin.com .

$ pastebinit -i hello_unixnlinux.txt -b http://pastebin.com
http://pastebin.com/d6uXieZj

Código de postagem

Você também pode dizer que o conteúdo que está colando é um código usando a opção -f . Por exemplo, aqui está um script Bash. Também vamos nomear o upload usando a opção -a , para que ele apareça com o nome "ex_bash_1".

$ pastebinit -i sample.bash -f bash -a ex_bash_1 -b http://pastebin.com
http://pastebin.com/jGvyysQ9

Uma lista completa de sintaxes é suportada, e é abordada no FAQ pastebin.com sob este tópico intitulado: Para quais idiomas você oferece realce de sintaxe? .

Para mais detalhes, verifique as páginas man, man pastebinit .

Amostras

Aqui estão dois exemplos do arquivo que postei em cada serviço.

fpaste - link

pastebin- link

Referências

  • SAÍDA DA LINHA DE COMANDO PARA PASTEBIN - PASTEBINIT
por 09.01.2014 / 06:16
20

Eu gosto das duas ferramentas de linha de comando que usam curl , listadas no Wiki do Arch :

<command> | curl -F 'sprunge=<-' http://sprunge.us

<command> 2>&1 | curl -F 'f:1=<-' ix.io

Você pode fazer uma função simples para evitar que você tenha que lembrar dos detalhes, assim:

sprung() { curl -F "sprunge=<-" http://sprunge.us <"$1" ;}

Você pode enviar para uma URL avançada se quiser destacar a sintaxe da sua pasta de código. Para ix, inclua /ID/ na URL ( link ) para a sintaxe padrão com base na detecção automática ou /ID/<language>/ para defina explicitamente o idioma para o destacamento de pigmentos.

Para o link , anexe ?<language> para o mesmo efeito.

    
por 09.01.2014 / 06:25
15

Eu precisava de algo para compartilhar a saída do terminal mesmo quando o servidor X não estava carregado, então criei este serviço: termbin.com . A única coisa que você precisa é de netcat, então você pode facilmente compartilhar com qualquer pessoa qualquer coisa que possa ser mostrada no terminal, há um exemplo:

cat /etc/fstab | nc termbin.com 9999

Depois de executar este comando, você receberá um endereço de URL de resposta com um arquivo de texto.

Para facilitar a sua vida, você pode adicionar esse alias ao seu arquivo .bashrc:

echo 'alias tb="nc termbin.com 9999"' >> .bashrc

Agora, o compartilhamento será muito mais simples:

uname -a | tb

Você pode obter os salvos, por exemplo, usando o curl. Você encontrará mais exemplos em termbin.com .

Você também pode hospedar seu próprio servidor; há um repositório do github: link . Se você quiser torná-lo privado, não se esqueça de definir o parâmetro da lista de permissões.

    
por 11.09.2014 / 00:16
5

Eu uso clitxt como nenhuma conta é necessária, e não há parâmetros ou configurações para lembrar. Você apenas canaliza o comando para clitxt e retorna um URL. por exemplo.

root@server3219-old7 [~]# yum -y update | clitxt
https://clitxt.com/t/ad7-1426995329.txt
    
por 22.03.2015 / 04:40
3

Eu escrevi este site especificamente feito para ser colado por curl, já que eu senti que ninguém deveria se lembrar de uma sintaxe específica como no sprunge. Também não é apenas open source, mas totalmente portátil, para que você possa facilmente configurar seu próprio "curlpaste" com qualquer outro domínio. ou seja, um servidor de colar particular.

curl --data-binary @your-file-here.txt https://curlpaste.com

se você visitar o site, há também uma interface da web que fornece outras opções, como ler uma vez e excluir.

    
por 04.08.2017 / 23:07
2

Este é outro serviço que parece oferecer isso: link

Adicione o código em um arquivo input.txt e execute este comando a partir de uma janela de terminal:

$ curl --form "expiration=0" --form "code_type=nohighlight" \
     --form "content=<input.txt" https://ctrlv.link/insert.php

Um exemplo com código C / C ++ (test.cpp):

$ curl --form "expiration=0" --form "code_type=cpp" \
     --form "content=<test.cpp" https://ctrlv.link/insert.php'
    
por 11.04.2017 / 00:10
1

Recentemente, criei uma ferramenta para a pasta de comando link eu uso com frequência

colar seu arquivo é tão simples quanto

npw -lo filename linkpath

Então, basicamente, cola o conteúdo no link

A sinalização l é para atualização ao vivo, se alguém estiver visualizando a página que a página atualizará sem recarregar.

o sinalizador 'o' é para sobrescrever, se você não usá-lo, o conteúdo será anexado ao existente.

Você pode instalar a ferramenta via pip

usando o comando.

pip install npw

Aqui é a página do github.

    
por 28.04.2018 / 20:17