在Linux中,flock命令用于創建文件鎖以防止其他進程同時訪問同一個文件。其基本語法如下:
flock [options] <file> <command>
其中,<file>
是要鎖定的文件的路徑,<command>
是要執行的命令。當使用flock命令時,它會嘗試以獨占模式鎖定指定的文件,并執行給定的命令。只有當鎖定成功時,命令才會執行,否則命令會等待直到獲得鎖。
一些常用的選項包括:
-x
或--exclusive
:獨占模式,獲取獨占鎖。-n
或--nonblock
:非阻塞模式,如果無法獲得鎖,則立即返回錯誤。-u
或--unlock
:解鎖指定文件。示例:
flock -n /tmp/lockfile.lock echo "Hello, World!"
這個示例會嘗試以非阻塞模式鎖定/tmp/lockfile.lock
文件,如果成功則輸出Hello, World!
。