複数のディレクトリとファイルを含むtar.gzファイルがあります。特定のディレクトリをリモートホストにコピーして抽出する必要があります。
単一のファイルでこれを行う方法を知っていますが、単一のコマンドで複数のファイルを処理するのに問題があります。
tar zxOf /mnt/debug.tar.gz libr.so | ssh $MY_IP 'cat > /local/libr.so'
現在の回避策は、ディレクトリ全体をローカルに抽出し、scpを使用してコピーすることです。
tar -zxf /mnt/debug.tar.gz -C utils/foo --strip-components=1 tools/
ありがとうございます!
答え1
シンプルなシェルループはどうですか?
files="first second third"
for f in files; do
tar xf thearchive.tar $f | ssh otherhost "cat > $f"
done