私はLZMA圧縮tarballを生成するためにOEM tarを何度も呼び出しました。具体的には、以下を試しました。
tar -c -f --lzma Windows\ 7.vmwarevm.tar.lzma Windows\ 7.vmwarevm
私の努力でファイル名を持つアーカイブを作成し、--lzma
tarが:について文句を言いましたWindows 7.vmwarevm.tar.lzma
。Cannot stat: No such file or directory
おそらく同じ理由のためです。--lzma
作成するアーカイブのファイル名として扱われるため、実際に予想されるアーカイブ名は、アーカイブに含まれる引数リストで最初に処理されました。
数回検索したところ、MacOSでは提供されたオプションにそれが含まれていないことがわかったので、GNU tarを最初からビルドして別の名前で保存しました/usr/local/bin
。しかし、 rename と new で上記の呼び出しを使用しました。努力はtar
同じ効果をもたらしました。私は--lzma
。
私のコンピュータがうまく動作していると思います/usr/local/bin/lzma
。
tar
どの呼び出しを使用する必要がありますか?スクリプトにパイプするか、lzma
スクリプトで "tar czf foo.tgz foo"操作を実行しますが、lzma
代わりにgzip
圧縮に使用する必要がありますか?
答え1
それを使用するとtar
、後の最初の単語-f
は出力ファイル名です。。あなたの場合は、オプションの切り替え順序で十分です。
tar -c --lzma -f foo.tar.lzma sourcefile(s)
答え2
私はDrubenのコメントに同意します。
以下にも適用できます。
tar c files folders/ | lzma --options-here > foo.tar.lzma
速度を上げるためにパラレルコンプレッサーを使用したい場合でも機能します。