圧縮ファイルの非圧縮サイズを取得するには、gzip ユーティリティで -l オプションを使用できます。
gzip -l compressedfile.gz
しかし、出力をパイプして圧縮ファイルのサイズを取得する方法はありますか?たとえば、次のコマンドを使用します。
gzip -fc testfile > testfile.gz
または、特に直接アクセスできない場所(サーバー)に出力をリダイレクトする場合
gzip -fc testfile > /dev/null
gzip -fc testfile | ssh serverip "cat > file.gz"
これは可能ですか?圧縮率または圧縮サイズが必要です。
答え1
dd
救助に来てください。
gzip -fc testfile | dd of=testfile.gz
0+1 records in
0+1 records out
42 bytes (42 B) copied, 0.00018711 s, 224 kB/s
またはあなたのssh
場合
gzip -fc testfile | dd | ssh serverip "cat > file.gz"
0+1 records in
0+1 records out
42 bytes (42 B) copied, 0.00018711 s, 224 kB/s
次に、awkまたは類似のものを使用してコマンド出力を解析し、最後の行の重要な部分を抽出します。