silent
-s
=> silent – so no Progress bar
-S
=> don’t output errors
https://stackoverflow.com/questions/7373752/how-do-i-get-curl-to-not-show-the-progress-bar
bash variables
Using a variable in a curl call within Bash – remember to double-escape quotes. E.g.
1 |
<span class="pln">curl </span><span class="pun">-</span><span class="pln">X POST </span><span class="pun">-</span><span class="pln">H </span><span class="str">'Content-type: application/json'</span> <span class="pun">--</span><span class="pln">data </span><span class="str">"{\"text\": \"${message}\"}"</span> |
processing curl output
e.g. I wanted to count the lines from a GET
for an Elasticsearch nodes. This seemed the obvious:
curl 0:9200/_cat/indices?v&health=yellow | wc -l
but there are a few things wrong here.
1. it outputted everything to the terminal including all the green nodes and then seemed to hang until I hit Enter – not what I was expecting
Solution:
there’s an ampersand character in the URL.
2. also there’s progress output from curl
Solution:
silence with -s
curl -s "0:9200/_cat/indices?v&health=yellow" | wc -l
3. you still get the header from elasticsearch. i.e.
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size