40

パイプされたzipファイルを次のように解凍する方法に関するアイデア:

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip

通常のファイルで行っていたように、ファイルをディレクトリに解凍したかったのです。

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip | unzip -d ~/Desktop
4

7 に答える 7

15

BusyBoxunzipは stdin を取り、すべてのファイルを抽出できます。

wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip | busybox unzip -

後のダッシュunzipは、標準入力を入力として使用することです。

あなたも、

cat file.zip | busybox unzip -

しかし、それはの冗長ですunzip file.zip

ディストリビューションがデフォルトで BusyBox を使用している場合 (Alpine など)、実行するだけunzip -です。

于 2018-10-11T12:07:59.040 に答える
10

以下は bash では機能しませんが、zsh では機能します。多くの zsh ユーザーがここにたどり着く可能性があるため、それでも役立つ可能性があります。

% unzip =( wget -qO- http://downloads.wordpress.org/plugin/akismet.2.5.3.zip )
Archive:  /tmp/zshLCod6x
   creating: akismet/
  inflating: akismet/admin.php       
  inflating: akismet/akismet.css     
  inflating: akismet/akismet.gif     
  inflating: akismet/akismet.js      
  inflating: akismet/akismet.php     
  inflating: akismet/legacy.php      
  inflating: akismet/readme.txt      
  inflating: akismet/widget.php      
% 

ダウンロードした一時的な zip ファイルがすぐに削除されていることがわかります。

% ls /tmp/zshLCod6x
ls: cannot access '/tmp/zshLCod6x': No such file or directory
% 
于 2013-11-14T22:14:17.453 に答える
6
wget -q -O tmp.zip http://downloads.wordpress.org/plugin/akismet.2.5.3.zip && unzip tmp.zip && rm tmp.zip
于 2011-08-22T03:22:20.670 に答える
4

funzip(http://www.info-zip.org/mans/funzip.html)を見てみます。そのためのマニュアルページには、

...filter for extracting from a ZIP archive in a pipe

申し訳ありませんが、例はありませんが、Linuxの解凍ユーティリティが付属しているようです。

于 2011-08-20T14:59:08.057 に答える