0
我有很多同時執行的腳本shell,它們使sed在同一個文件上。因此sed命令有可能同時在同一個文件上執行。如果是,爲什麼。我應該在同一個文件上對並行sed執行情況進行競爭條件檢查嗎?如果是,那麼如何鎖定文件然後
我應該對同一個文件上的並行sed執行進行競爭條件檢查嗎?
如果是,如何鎖定該文件。
我有很多同時執行的腳本shell,它們使sed在同一個文件上。因此sed命令有可能同時在同一個文件上執行。如果是,爲什麼。我應該在同一個文件上對並行sed執行情況進行競爭條件檢查嗎?如果是,那麼如何鎖定文件然後
我應該對同一個文件上的並行sed執行進行競爭條件檢查嗎?
如果是,如何鎖定該文件。
如果文件被一個或多個腳本實例修改,那麼您可能需要鎖定它。在這種情況下,應避免並行執行多個更改,甚至在文件更改期間甚至不要執行讀取。你可以使用不同的鎖定技術。例如,您可以使用flock在開始文件更改之前立即獲得排它鎖,並在更改「提交」後立即釋放相同的鎖。
如果您的文件在腳本執行過程中未被修改,我看不到任何理由來鎖定它。並行讀取同一文件是可以的。
查看'flock' – 123