Ale*_*sar 5 linux bash file-locking
我在我们的 ERP 系统中编写了一个函数,它通过简单地将日志“回显”到日志文件来将日志写入服务器上的文件。
echo "SOME LOGDATA" >> /users/erp/log/LOGMSG
Run Code Online (Sandbox Code Playgroud)
每次用户触发特定事件时,都会调用 LOG 函数。
如果 2 个用户完全同时触发 LOG 事件会发生什么?
“echo”是否负责文件锁定?在我看来,必须是 linux 内核或 bash 必须注意,文件不是由 2 个命令行指令同时写入的。
我写了一个测试用例来强制这种情况(一秒内大约有 1000 个 LOG 调用),似乎我的想法是正确的,但我不能确定,这些调用是在 bash 上同时执行的。