bash: 경고: 셸 수준(1000)이 너무 높습니다. 1로 재설정하세요.

bash: 경고: 셸 수준(1000)이 너무 높습니다. 1로 재설정하세요.

방금 다음 명령을 실행해 보았습니다.

/etc/ssl/acme/acme.sh --log /var/log/p3x/acme/acme.sh.log --home /etc/ssl/acme --force --issue -d patrikx3.tk -w /var/www/acme-challenge

다음 오류가 발생합니다.

bash: 경고: 셸 수준(1000)이 너무 높습니다. 1로 재설정하세요.

이 오류는 무엇입니까?

답변1

Shell Level은 중첩된 쉘의 하위 쉘 레벨을 식별합니다.

Bash man - 쉘 레벨 SLVL

SLVL - 새 Bash 인스턴스가 시작될 때마다 1씩 증가합니다.

  • 이는 Bash 쉘의 중첩 깊이를 계산하는 데 사용됩니다.

보시다시피여기

자체적으로 실행될 때 bashbash 쉘의 레벨은 1로 더 높습니다.

다음은 bash에 대한 재귀 호출입니다.

$ echo "bash haha" > haha
$ bash haha

정기적으로 다음 메시지를 받습니다.

bash: 경고: 셸 수준(1000)이 너무 높습니다. 1로 재설정하세요.

위의 오류는 bash가 자신을 1000번 호출했음을 의미합니다.

$SLVL 변수가 쉘 중첩 수준을 추적하는 방법에 대한 또 다른 예:

$ echo $SHLVL
1
$ bash
$ echo $SHLVL
2
$ exit
$ echo $SHLVL
1

관련 정보