sh 스크립트의 경고를 수정하기 위해 shellcheck를 사용하고 있습니다. 스크립트는 다음 명령을 사용하여 하드 파일 설명자 제한을 확인합니다.
ulimit -H -n
다음을 통해 소프트 fd 제한을 설정합니다.
ulimit -n "$MAX_FD"
그러면 Shellcheck 경고가 생성됩니다.
In POSIX sh, ulimit -H is not supported. [SC2039]
In POSIX sh, ulimit -n is not supported. [SC2039]
POSIX sh에서 하드 리소스 제한을 얻고 소프트 리소스 제한을 설정하는 이식 가능한 방법은 무엇입니까?
답변1
뭐 엄밀히 말하면,POSIXulimit
-f
옵션(최대 파일 크기)만 알 수 있는 것 같아서 답은 '없음'이 아닐까 싶습니다 .
Linux에 있는 거의 모든 셸(Bash, Busybox, Dash, Ksh, mksh, yash, zsh)에는 , 및 를 ulimit
지원하는 내장 명령이 있습니다 .-H
-S
-n
Linux가 아닌 시스템에 대해서는 잘 모르겠지만,FreeBSD 매뉴얼 페이지sh(1)
또한 OpenBSD에서는 다음과 같이 언급했습니다./bin/sh
ksh인 것 같아, 이는 또한 이를 지원합니다.