bash - Flock 命令在锁定文件时删除所有数据
问题描述
停止错误
set -e
pidfile=/data/demo3.json
# lock it
exec 200>$pidfile
flock -n 200 || exit 1
# my code
echo "hello"
sleep 20
echo "bi"
我正在使用这个 shell 脚本(utility.sh)来锁定 demo3.json 文件。所以,当这个脚本(utility.sh)运行时,我不希望任何人访问 demo3.json 文件。但是这个脚本不能正常工作。Demo3.json 文件权限为 -rw-r--r--
在时间 = T1 从一个终端我正在运行这个实用程序脚本 ./utility.sh 输出 - 你好在时间 = T1 从第二个终端我想访问 demo3.json 文件 cat demo3.json 但是这个文件中的所有数据都被删除了我也可以同时访问这个文件。有人可以帮我弄这个吗?
解决方案
推荐阅读
- java - RecyclerView 列表不可见
- c# - asp:TextBox - 有没有办法让 OnTextChanged 工作,即使在设置可见 = false 之后?
- c - 如何在 c 中初始化全局结构?
- angular - Angular Element v/s 在 app.component.ts 中自定义选择器
- mysql - curl 操作中的 Node-js 日志存储在哪里?
- ios - Cocos2d-x 4.0 新项目不包含 xcodeproj 文件
- asp.net-core-mvc - 我们可以在 ASP.NET Core 2.2 MVC 中为图像设置不同的根目录吗?
- javascript - 为什么 React-app 状态没有在这里重新渲染?如何让状态及时更新
- android - 如何获取 NMEA 消息 **RMC 或 **GGA 或 **GSA Android
- python-3.x - ValueError:字典更新序列元素 #0 的长度为 1;2 是必需的(Flask json.dumps)