.
Daniel Stenberg criou uma nova ferramenta para a comunidade de código aberto que permite fácil análise e manipulação de URLs.
trurl é um comando simples que pode ser usado para analisar e manipular o URL, que foi originalmente projetado para shell script para facilitar o trabalho com URLs de scripts ou dentro do terminal.
Ele suporta várias operações, como extrair componentes específicos de uma URL, modificar ou anexar parâmetros, decodificar URLs e extrair componentes específicos de URL da URL, como esquema, usuário, senha, opções, host, porta, caminho, consulta, fragmento, e zonaide.
Além disso, você pode fornecer entrada do arquivo ou do STDIN regular e também permite extrair a saída no formato JSON.
Sob o capô, ele usa o mesmo analisador de URL libcurl que é usado no curl ferramenta de linha de comando para analisar URLs.
Portanto, antes de avançar, você precisa instalar o libcurl4-openssl-dev ou libcurl4-gnutls-dev dependência de seu sistema para compilar e usar trurl.
Comece a usar o Trurl
Para instalar as dependências necessárias, execute o seguinte comando de acordo com sua distribuição:
$ sudo apt install libcurl4-openssl-dev
$ sudo yum install libcurl-devel
Depois de instalar a dependência, clone o projeto em seu diretório atual e altere o diretório de trabalho para trurl usando o seguinte comando:
$ git clone https://github.com/curl/trurl.git
$ cd trurl
Em seguida, compile e mova o trurl para o /bin diretório.
$ make
$ sudo mv trurl /bin
Uso de comando
Agora é hora de explorar o trurl executando-o com os sinalizadores/opções disponíveis para analisar e manipular as URLs.
A primeira coisa que veremos é como o trurl analisará os caracteres unicode na URL e nos mostrará a URL decodificada.
$ trurl ex%61mple.com/
http://example.com/
Se você notou, ele adiciona automaticamente o protocolo http ao URL.
Mas se você modificar o URL como mostrado abaixo, poderá descobrir que ele adiciona o nome do protocolo que você colocou antes do nome do host.
$ trurl smtp.example.com/
smtp://smtp.example.com/
Depois de obter o uso básico de trurl, vamos ver como você pode anexar o caminho ao URL base.
Anexar componente de URL ao URL base
Para anexar o caminho, você precisa usar o --acrescentar sinalizar e usar caminho componentes dos componentes de url disponíveis, como url, esquema, usuário, senha, opções, host, porta, caminho, consulta, fragmento e zoneid.
Depois de obter o conhecimento sobre os componentes disponíveis, vamos adicionar “novo caminho” para a URL base usando o comando abaixo:
$ trurl example.com/ --append path="newpath"
http://example.com/newpath
Inclua o caminho dentro da citação (““), caso contrário, ele adicionará o % 20 se encontrar o espaço no caminho.
Se você deseja anexar uma consulta de pesquisa, pode usar o seguinte comando para anexar “bar” depois “foo”.
$ trurl example.com?s=foo --append query=bar
http://example.com/?s=foo&bar
Observe que --acrescentar só funciona com os componentes de caminho e consulta.
caminho de redirecionamento
Acima, você viu como anexar os componentes “path” e “query” à URL; agora você verá como pode redirecionar o caminho da URL base especificando o --redirect opção.
$ trurl example.com/main --redirect "/about/example.html"
http://example.com/about/example.html
Definir/modificar componente de URL
Se você deseja adicionar ou modificar um componente de URL específico, pode usar o -s ou --definir opção como mostrado abaixo:
$ trurl https://example.com --set host="Strong The One.com"
$ trurl https://example.com --set port="8080"
$ trurl https://example.com --set fragment="test"
Extrair componente de URL
Você também pode usar trurl para extrair certos componentes de URL do respectivo URL usando o -g ou --pegar opções, conforme abaixo:
$ trurl --url https://example.com -g '{port}'
$ trurl --url https://example.com -g '{port} {host}'
Analisar e extrair componente de URL do arquivo
Se desejar, você também pode manipular uma lista de urls especificando o caminho do nome do arquivo onde você armazenou o url. Isso tornará muito mais fácil para você manipular e analisar o arquivo.
Para ler a URL do arquivo, use o --url-file ou -f opção e especifique o caminho para o arquivo contendo as URLs conforme mostrado abaixo:
$ trurl --url-file ~/Documents/list-of-url
https://example.com/
http://test.com/
http://linuxmint.com/
ftp://ftp.example.com/
Se você quiser apenas a porta e o nome do host, use o código abaixo:
$ trurl --url-file ~/Documents/list-of-url -g '{port} {host}'
443 example.com
80 test.com
80 mint.com
21 ftp.example.com
Bastante útil, certo?
Embrulhar
Isso é tudo neste artigo, onde você aprendeu como usar o comando trurl para analisar e manipular URLs de acordo com seus requisitos.
Depois de ler este guia, acho que você não precisará escrever scripts para analisar ou manipular a URL.
trurl está em seus estágios iniciais, então você pode encontrar alguns bugs ou limitações, mas definitivamente vale a pena explorar por sua simplicidade e facilidade de uso.
Fique de olho em futuras atualizações e melhorias para aproveitar ao máximo esta ferramenta estrelando o projeto no Github.
Um homem com uma tecnologia efusiva que explorou algumas das incríveis coisas da tecnologia e está explorando mais. Enquanto avançava, tive a chance de trabalhar no desenvolvimento Android, Linux, AWS e DevOps com várias ferramentas de código aberto.
.







