递归地将/ dev / null复制到文件模式

时间:2015-06-18 10:52:20

标签: linux command-line zfs

我正在使用已达到其磁盘配额的ZFS系统。因此,rm命令不再可用。但是,我可以将/dev/null复制到特定文件以有效删除它们。

问题是我想清除的目录大小约为40GB,每个有任何周长的文件都埋在3个级别内。

是否有一种命令行方式可以轻松搜索并用/dev/null替换这些文件?我可以在Python / Perl中轻松完成,但我想通过命令行尝试。

2 个答案:

答案 0 :(得分:3)

编辑:这是评论中更好的答案:

find $DELDIR -type f -exec cp /dev/null "{}" \;

旧答案在这里:

find $DELDIR -type f | xargs cp /dev/null

其中$DELDIR是要开始的目录的名称。-type f选项仅针对文件,而不针对目录。当然,xargs只需使用每行查找输出中的文件名关闭cp /dev/null

答案 1 :(得分:0)

仔细尝试:

find $DELDIR -type f | xargs cp -af /dev/null {} \;