Linux/OpenWRT - 콘솔/stdout 출력으로 bash 스크립트 실행

Linux/OpenWRT - 콘솔/stdout 출력으로 bash 스크립트 실행

나는오픈WRT메뉴를 표시하고 입력에 따라 적절한 정보를 stdout에 표시하는 작은 대화형 쉘 스크립트를 작성한 시스템입니다.

예를 들어:

== Please Select Option ==
[1] Display IP address
[2] Display VPN Status
[3] Display something else

Please enter your choice?

스크립트를 수동으로 실행하면( menu.sh) 제대로 작동하는 것 같습니다. 하지만 OS가 부팅될 때 스크립트가 자동으로 실행되도록 하는 방법을 찾아야 합니다. 따라서 쉘 프롬프트를 보는 대신 사용자는 스크립트의 출력(이 경우 메뉴 시스템)을 보게 됩니다.

어떻게 해야 합니까?

답변1

OpenWRT는 Busybox를 ash쉘로 사용하는데, 이는 /etc/profile로그인 시 명령을 실행하는 것으로 보입니다.

root누구든지 로그인할 때 스크립트가 자동으로 실행되도록 하려면( 라우터인 경우 에만 가능 ) 다음을 추가하면 됩니다 /etc/profile.

/full/path/of/menu.sh

메뉴가 완료되었을 때 셸에 메뉴가 표시되지 않도록 하려면 이를 지원하는 추가 논리가 필요합니다.

관련 정보