websocat / wscatは毎秒新しいファイルを保存します。

websocat / wscatは毎秒新しいファイルを保存します。

この質問は、wss://ストリームを複数のファイルに保存することです...実行中(以降ではありません)

例:

websocat "wss://stream.binance.com:9443/ws/btcusdt@depth" > /path/$(date +%s).txt

このコマンドは、1秒間に多数の新しい行を受け取ります。

このコマンドは、Unixタイムスタンプに日付を含むファイルを生成しますが、Ctrl + Cを押すまで同じファイルに保存され続けます。

非常に大きなファイルに膨らませたくない... stdoutを複数のファイルに保存したいです。

はい

1652209720.txtには30行があります。

1652209721.txtには10行があります。

など

.shを生成しようとしましたが、while command do ....新しいファイルの代わりにシェルからstdoutを受け取りました...

どうすればいいですか?

  • 注:私はbashスクリプトよりもPHPをよく知っています... .sh全体を編集してください-----

    #!/bin/bash

    そして websocat "wss://stream.binance.com:9443/ws/btcusdt@length" は echo $line >> /Users/jinto/Downloads/d/$(date +%s).stub 読み込みラインを実行して完了します。

答え1

websocat次のように出力をパイプする必要があります(|最後にあることに注意してくださいwebsocat。)

websocat "wss://stream.binance.com:9443/ws/btcusdt@depth" |
while read line
do
    echo $line >> /Users/jinto/Downloads/d/$(date +%s).stub
done

関連情報