2016-06-28 6 views
0

からのすべての出力を削除するには:はどのように/抑制curlコマンド(ルビー)私が持っている

info = `curl -s http://www.{insertwebsitehere}.com` 

いくつかのより多くの引数が続くと私は端末に印刷されます、すべてを抑制します。私は-sが進行状況バーを取り除いたことを知っていますが、cURLコマンドのすべての出力を完全に削除する方法がわかりません。

このコマンドは、プログラムの実行中に何度も実行され、生成された出力はすべてを上げます。

私が理解していることは、それをすべて削除してリダイレクトしなければならないという議論がないからです。私は方法を理解できません。

私はそれの最後に> /dev/null/を追加しようとしましたが、それは私にエラー

任意のアイデアを与えましたか?

おかげ

+3

'info = \' curl -s http:// www。{insertwebsitehere} .com \ '' **は出力を生成しません。あなたが見ているのは、IRB/pry echo 'info'です。 – mudasobwa

+0

@ mudasobwa okだから私は上記のcURLコマンドの結果として画面に印刷される何かを意味します。それで、その "irb/pry echoing"のものを取り除く方法があります。私はコマンドを呼び出した後に何も出てこないことを願っています – adamcross

+0

あなたはあなたがしていることを完全に誤解しています。もう一度言います:**このコマンドは出力を生成しません**。確認するには、 'ruby -e 'info = \' curl -s http://www.google.com \ '''を実行してください。コンソールに入力をエコーさせたくない場合は、コンソールでコマンドの実行を停止してください。 – mudasobwa

答えて

0

あなたは2>/dev/nullを追加することにより、標準エラー出力を抑制することができます

info = `curl -s http://www.{insertwebsitehere}.com 2>/dev/null` 

が、良い方法は、いくつかのHTTPライブラリを使用して、シェルで追加のプロセスを開始せずに、あなたのページの取得にあります。例えば、curb - ruby​​のlibcurlバインディング

+0

ありがとう、これは私が必要としていたものです。 @ mudasobwaはメモを取る – adamcross

0

/dev/null

info = `curl -s http://www.{insertwebsitehere}.com > /dev/null` 

の終わりから削除/しかし、これは空の文字列にinfoを設定します。
私はあなたが望むものではないと思う。

関連する問題