2015-10-17 31 views
0

我通常会下载大量的图像,并经常使用cleanup.sh文件进行清理,该文件只包含rm -rf *命令。是否可以计算文件执行的次数?

我的查询是,我想知道做了多少次。就像说,在另一个文件中,我想追加文件已被执行的信息。 他们有什么办法吗?

回答

1
echo $(($(cat other.file)+1)) > other.file; 
  • $(cat other.file)一个读取other.file
  • $((...+1))增加它的内容算上线。
  • echo ... > other.file写入结果返回给other.file

当然,这需要你与内容0创建初始other.file

+0

如果您将输出重定向到同一个文件,则不能安全地从other.file中读取数据。看到这个问题:http://stackoverflow.com/questions/6696842/bash-redirect-input-from-file-back-into-same-file/6697219#6697219 – Lynch

+0

在这种情况下,这是可以的,因为命令替换是在输入重定向之前评估。问题出现在'cat foo.txt> foo.txt' – chepner

+0

@Lynch这种问题只发生在阅读结束前写入开始时。 'cat'不是这种情况。 – Siguza

1

在你的cleanup.sh中,你可以做rm -rf * && date >> cleanup.runs.log。这样,无论何时运行它,日期/时间都会写入日志文件,您可以使用它来计算脚本执行的次数和时间。

1

这可能工作:

echo "Script was executed" >> logFile 

然后你可以使用wc -l

+0

或者为了同样的目的使用[logger(1)](http://man7.org/linux/man-pages/man1/logger.1.html) –

+0

不错。然而,他需要grep系统日志,可能不止一次自舍入,旧值将被eventuall删除。 –

相关问题