如何查找特定年份的所有文件并通过Bash Script清空它们

时间:2016-12-02 11:59:50

标签: bash

我正面临一个问题。我需要查找特定年份的文件,即2012年并清空文件。我使用以下命令

#!/bin/bash
find . -type f -newermt 2012-01-01 ! -newermt 2013-01-01 -exec truncate -s 0 {} \;

完美无缺,但

#!/bin/bash
find . -type f -newermt 2016-01-01 ! -newermt 2017-01-01 -exec truncate -s 0 {} \;
echo "Cleaning Complete ...."

给出以下错误

find: missing argument to `-exec'

我正在使用的语法或命令组合是否有问题。

1 个答案:

答案 0 :(得分:3)

能够通过以下命令解决问题。

find . -type f -newermt 2016-01-01 ! -newermt 2017-01-01 -exec truncate -s 0 {} \; && echo "Cleaning Complete ...."