Curl, jq și sed

July 15, 2020 1 minut

    Astăzi împart niște instrumente interesante din linia de comandă linux. Consideră că e un punct de pornire pentru a învăța lucruri noi.

    Pentru cereri API folosesc curl.

    $ curl -X GET {rest_api} --header "Authorization: Token {token}"
    

    unde {rest_api} e REST API și {token} e token-ul de acces. De obicei utilizez GET, POST și PATCH pentru a solicita, crea și schimba/șterge datele JSON.

    curl împreună cu jq afișează un răspuns mult mai frumos.

    $ curl -X GET {rest_api} --header "Authorization: {token}" | jq .
    

    unde jq . arată obiectul întreg.

    sed mă scutește de multă bătaie de cap atunci când trebuie să editez o listă de fișiere fără a le deschide pe rând.

    $ sed -i 's+{source}+{target}+g' {file}
    

    unde s caută, g e global și {file} e fișierul tău. {source} și {target} e schimbarea pe care vrei s-o faci. Petru a căuta toate fișierele din director, înlocuiește {file} cu *. Dacă cauți după numărul liniei, înlocuiește s cu 15s, unde 15 e numărul liniei.

    Poți șterge o linie întreagă care conține cuvântul question.

    $ sed -i 's+.*question.*++g' {file}
    

    Joacă-te. Învață.