2012-11-17 72 views
0

目前我正在做备份mysql数据的bash脚本,唯一的问题是tar的参数debian正在工作,但它不能在FreeBSD上工作。添加到tar后删除文件

是的,我已阅读本: Deleting files after adding to tar archive

答案是,我总是使用上debian的解决方案 - 我指的是--remove-files参数。

在FreeBSD上执行以下命令:

tar --remove-files -jcPf $DIR/$Y/$M/$D/mysql-$HOUR.tar.bz2 *.sql

抛出以下错误:

tar: Option --remove-files is not supported 

我还没有发现类似--remove-files PARAM什么。同时阅读man tar,那么解决方案是什么?

回答

0

它必须是tar选项吗?最有可能的--remove-files是gnu扩展名(或其他),所以你可能只需要在FreeBSD上安装这个'扩展'版本的tar并使用它。

如果你不能/不想,我想这会做:

tar -jvcPf $DIR/$Y/$M/$D/mysql-$HOUR.tar.bz2 *.sql | xargs rm 

顺便说一句,我认为“ - ”可以(也应该)从焦油选项省略......

+0

'xargs rm' does not works,it leave the files without remove them。 – Scott

+0

尝试添加-f选项:... | xargs rm -f – ishi