bash 每 10 分钟创建一次文件



我想每 10 分钟创建一个文件,创建文件后,它将被另一个程序用新名称覆盖,因此应使用以下脚本创建一个新名称:

#!/bin/bash
echo 
while true
do
    cat >> trn 
    echo creating trn
    sleep 600   
done

当我运行它时,它会创建第一个文件,不回显语句,然后保持循环而不创建更多文件。

不要为此使用cat >> trn。它实际上阻止了脚本的执行(等待用户输入(!

您可以改用(例如(

  • touch trn>> trn(将创建包含空内容的"trn"文件,仅当尚不存在时(
  • echo > trn(将创建一个换行符内容创建/覆盖"trn"文件(
  • echo -n > trnprintf ''(更便携(或干脆> trn(将创建/覆盖具有空内容的"trn"文件(

感谢@CharlesDuffy的启发性评论。有关printf ''echo -n更好的可移植性的信息。


如果您的系统支持watch命令,那么有这个更简单的选项可以替换整个脚本(注释中的@Qback

(:
watch -n 600 touch trn

相关内容

  • 没有找到相关文章

最新更新