mvパイプを介してtarの出力をパイプする方法は?

mvパイプを介してtarの出力をパイプする方法は?

前の質問私の友人がtarを介してダウンロードしたファイルを転送する方法を尋ねたので、mvを介してtarの出力を転送する方法を知りたいです。今、次のコマンドがあります。

wget -c https://github.com/JeffHoogland/moksha/archive/0.1.0.tar.gz | tar -xz

これにより、というディレクトリが作成されますが、このコマンドの最後にあるパイプ()を介してmoksha-0.1.0この出力ディレクトリの名前を変更する方法を知りたいです。パイプなしでこれを行う方法を知っていますが、まだwgetとtarと同じコード行にある場合でも喜んで受け入れます。moksha|

明らかに言えば、

wget -c https://github.com/JeffHoogland/moksha/archive/0.1.0.tar.gz | tar -xz -C moksha

出力ディレクトリが作成されますが、mokshaこの出力ディレクトリにはこのディレクトリがありますが、代わりにこのディレクトリの名前をという名前の新しいディレクトリに配置する代わりに置き換えたいとmoksha-0.1.0思います。moksha-0.1.0mokshamoksha-0.1.0moksha

ベストアンサー1

このように?

[root@b se]# wget -cqO - https://github.com/JeffHoogland/moksha/archive/0.1.0.tar.gz | tar -xz --transform=s/moksha-0.1.0/moksha/
[root@b se]# ls
moksha
[root@b se]# ls moksha
ABOUT-NLS       config.guess          debian                 Makefile.am
aclocal.m4      config.guess.dh-orig  depcomp                Makefile.in
AUTHORS         config.h.in           doc                    missing
autogen.sh      config.rpath          enlightenment.pc.in    netwm.txt
autom4te.cache  config.sub            enlightenment.spec.in  NEWS
BACKPORTS       config.sub.dh-orig    INSTALL                po
BUGS            configure             install-sh             README
ChangeLog       configure.ac          intl                   src
compile         COPYING               ltmain.sh              xdebug.sh
config          data                  m4                     x-ui.sh

tarマニュアルページから:

--変形=表現する, --xform=表現する
    sed を使用した交換表現するファイル名を変換します。

だからsedこれが必要かもしれません。しかし、あなたが持っているなら、wgetおそらくあなたsedもそうでしょう。

おすすめ記事