有没有办法在创建新文件时将旧文件(例如 auto0) move 到另一个本地化?
我需要一些能够将自动创建的记录从游戏 move 到我的 www 文件夹的东西,以便其他人可以下载它。
我不想因为 move 未保存的文件而丢失任何数据。所以我想等待下一场比赛开始。
最佳答案
假设新文件保持打开状态,请添加 ie。这一行到 crontab:
$ for f in $(find /tmp/src -type f); do ! lsof $f &> /dev/null && mv $f /tmp/www ; done
测试:# from one terminal:
$ mkdir -p /tmp/{src,www} && touch /tmp/src/{one,two} && less /tmp/src/two
# execution shell:
$ for f in $(find /tmp/src -type f); do ! lsof $f &> /dev/null && echo "mv $f /tmp/www" ; done
mv /tmp/src/one /tmp/www
如果只想保留最新的(并且没有主动打开新文件),修改find
及时过滤:for f in $(find /tmp/src -type f -printf "%T+ %p\n" | sort | awk '{print $2}' | head -n -1); do mv $f /tmp/www ; done
关于command-line - Centos 7 创建新文件时 move 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65781194/