【发布时间】:2019-09-20 00:18:16
【问题描述】:
我的要求是仅在不被访问时替换文件。我有以下 sn-p:
if [ -f file ]
then
while true
do
if [ -n "$(fuser "file")" ]
then
echo "file is in use..."
else
echo "file is free..."
break
fi
done
fi
{
flock -x 3
mv newfile file
} 3>file
但我怀疑我没有正确处理并发。请提供一些见解和实现这一目标的可能方法。
谢谢。
【问题讨论】:
标签: bash unix concurrency flock fuser