-n
나는 오랫동안 국기의 의미에 대해 혼란스러워했다 flock(1)
.
기본적으로 이 도구에 대한 많은 가이드가 있는데, 우리가 자주 보는 것은 다음과 같습니다 flock -n 100
. 여기에서 fd 번호 100은 특정 잠금 파일과 연결되어 잠금을 수행하는 데 사용됩니다.
몇 가지 간단한 테스트를 수행하면 flock
즉시 실패하고 종료되기 때문에 오늘 혼란스러웠습니다.
-n
플래그는 정확히 무엇을 하는가 flock
? -n 100
파일 설명자 번호 100을 잠긴 파일과 연결하는 것이 맞습니까 ?
답변1
내가 오해하고 위험한 가정을 했다는 것을 깨닫는 데는 오랜 시간이 걸렸습니다. 파일 설명자 번호를 설정하는 플래그인 -n 100
fd 100을 지정하기 위해 호출하는 것을 보면 알 수 있습니다 . -n
그러나 실제로는 그렇지 않습니다.
-n
비차단에 사용되는 이 플래그는 잠금이 실패할 경우 즉시 실패를 발생시킵니다. 에서 man flock
:
-n, --nb, --nonblock
즉시 잠금을 얻을 수 없으면 기다리지 말고 실패하세요. 사용된 종료 상태는 -E 옵션을 참조하세요.
일반 숫자가 주어지면 fd로 처리되는 것 같습니다. 이것은 분명하지 않습니다.