首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Linux上使用flock

如何在Linux上使用flock
EN

Stack Overflow用户
提问于 2019-06-09 06:07:45
回答 1查看 5.7K关注 0票数 3

我在看羊群医生:

calls/flock.htm

https://linux.die.net/man/1/flock

我有这个:

代码语言:javascript
复制
#!/usr/bin/env bash

temp_dir="$HOME/temperton/tmp";
mkdir -p "$temp_dir"

(

  flock -x "$temp_dir/a"
  echo '111'

) &

(

  flock -x "$temp_dir/a"
  echo '222'

) &

但是当我运行它时,我会得到这样的错误:

flock:坏文件描述符:'/home/ratt/temperton/tmp/a‘flock: 111个坏文件描述符:'/home/ratt/temperton/tmp/a’222

EN

回答 1

Stack Overflow用户

发布于 2021-03-31 14:52:15

“flock”是最有用的,然后用文件描述符操作。如果锁定了文件/dir-name,还应该提供一个执行命令。我想,在内部,它的工作方式如下:

代码语言:javascript
复制
    exec 4<$name # open
    flock 4
    <your_command_here>
    exec 4<&-    # close

在您的示例中,可以用

代码语言:javascript
复制
    flock $temp_dir sleep 5s

来检查差异。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56512379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档