web-dev-qa-db-ja.com

プログレスバーを表示しないようにするにはどうすればよいですか?

スクリプトでcURLを使用してプログレスバーを表示するnotにします。

私は-s-silent-S、および-quietオプションを試しましたが、どれもうまくいきません。

これが私が試した典型的なコマンドです。

curl -s http://google.com > temp.html

プログレスバーはファイルにプッシュしたときに表示されるだけなので、curl -s http://google.comにはプログレスバーがありませんが、curl -s http://google.com > temp.htmlにはあります。

487
adammenges
curl -s http://google.com > temp.html

ubuntu 9.10(プログレスバーなし)のcurlバージョン7.19.5で動作します。しかし、何らかの理由であなたのプラットフォームでうまくいかない場合は、いつもstderrを/ dev/nullにリダイレクトすることができます。

curl  http://google.com 2>/dev/null > temp.html
483
unutbu

Ubuntuのcurlバージョン7.22.0とOSXの7.24.0では、 show progress ではなく show errors の解決策は、-s--silent)と-S--show-error)の両方を使うことです。そう:

curl -sS http://google.com > temp.html

これはリダイレクトされた出力> /some/file、パイプ出力された| less、そして私のために直接端末に出力するための両方に働きます。

465
chmac

Curl 7.18.2ではダウンロードの進行状況バーが隠れていないことがわかりました。

curl -s http://google.com > temp.html

しかしそれはあります:

curl -ss http://google.com > temp.html
42
Bill Healey

それがなぜそれをしているのかわからない。出力ファイルを設定するには、-sの代わりに-oオプションを指定して>を試してください。

6
Tom Zych

しばらく前に、インストールされているjdkの特定のバージョンの例を検索するための廃棄を行う簡単なスクリプトを作成しました。

#!/bin/bash
REPO_TAG_URL=$1

SEARCH=`curl -s $REPO_TAG_URL`
NEXT_PAGE=`echo $SEARCH | jq -r .next`

echo $SEARCH | jq '.results[].name'

while [[ $NEXT_PAGE != 'null' ]]; do
    SEARCH=`curl -s $NEXT_PAGE`
    NEXT_PAGE=`echo $SEARCH | jq -r .next`
    echo $SEARCH | jq '.results[].name'
done

echo "Thats all folks"

次のように使用します:./script.sh https://registry.hub.docker.com/v2/repositories/library/Tomcat/tags/

0
Daniel Hajduk