在PBS提交任务的时候,经常遇到多个process在同一个节点上运行的情况,此时可能会遇到一些问题,比如同时多次拷贝同一文件等,此时希望能在bash用使用mutex来解决,在bash FAQ里面有如下解决方法:
#!/bin/bash
lockdir=/tmp/myscript.lock
while true; do
if mkdir "$lockdir"
then
# Your Script HERE
rm -rf "$lockdir"
break
else
sleep 5
fi
done