指定したディレクトリ以下のファイルだけをアーカイブする


DIR以下のファイルだけをARC.tar.gzに固めるには、

find DIR -type f -printf '%P\0'|tar czvf ARC.tar.gz -C DIR --null -T -

とすれば良いです。
富豪的なのは否めませんが、xargsは使っていないのでコマンドライン長の制限にはかからないはず。

なお、findの-printfはGNU拡張なので、OSXの場合は(MacPortsかHomeBrewより)coreutilsが必要です。


ruby gemにどうしてもおかしいのがあり、(install --local目的で)書き換える必要があったので。
gemはdata.tar.gzとmetadata.gzを固めたtarなので、data.tar.gzを生成できればp7zipで入れ替えられる。