当我试图在AIX机器中使用flock时,我得到的结果是找不到flock。系统管理员已经安装了util-linux包,但他说在AIX中不能使用flock可执行文件。请告诉我如何在AIX中获取flock命令??
发布于 2018-05-28 16:21:06
您可以从util-linux包编译flock.c,但它不会拥有linux版本的全部功能:
flock -n <handle>不起作用,因为在AIX上,子进程和父进程不共享文件锁。带选项-w <timeout>的flock(2)不会返回errno=EINTR (信号)。下面是一个在AIX上工作的示例:
#!/bin/sh
if [ "x$1" = x-locked ]; then
shift
else
echo "Trying flock on 'flock.tmp'"
if ! flock --verbose -w 0 flock.tmp "$0" -locked "$@"; then
echo 'Flock failed'
fi
exit
fi
echo "After flock -- sleeping 15 sec"
sleep 15
echo "Exiting"下面是我从源代码编译的flock版本:http://web.axelero.hu/lzsiga/flock.tgz
发布于 2018-05-26 19:23:58
我认为这个包包含flock命令。http://www.perzl.org/aix/index.php?n=Main.Util-linux
https://stackoverflow.com/questions/50541353
复制相似问题