at 명령의 기본 쉘을 변경하는 방법

at 명령의 기본 쉘을 변경하는 방법

를 사용하여 프로그램 실행을 지연하고 싶을 때 at다음과 같이 정확하게 설명합니다.

warning: commands will be executed using /bin/sh

bash예를 들어 이 기본 쉘을 어떻게 변경합니까 ?

답변1

참조하세요이것Unix & Linux Stack Exchange에 게시된 질문입니다. 첫 번째 문장은 다음과 같습니다.

Linux에서는 즐겨찾는 셸이 아닌 /bin/sh를 사용하여 지정된 명령을 실행할 것임을 항상 경고합니다. 이 메시지는 소스 코드에 하드코딩되어 있으므로 숨길 수 없습니다.

또한 해결 방법을 제안합니다.

전달한 명령은 /bin/sh에 의해 해석됩니다. 원하는 경우 이 명령을 스크립트의 경로로 사용할 수 있습니다. 그런 다음 /bin/sh는 스크립트 프로그램을 실행하여 스크립트의 인터프리터가 시작되고 스크립트를 해석하게 합니다. 스크립트의 언어는 이를 시작하는 프로그램과 완전히 독립적입니다. 따라서 예를 들어 bash 스크립트(예: #!/bin/bash로 시작하는 스크립트)를 실행하려면 스크립트 경로를 at에 전달하고 관련 없는 메시지를 무시하세요.

bash따라서 대신 를 사용하여 명령을 실행하려면 sh스크립트를 에 전달할 수 있습니다 at. 스크립트에 shebang 줄이 있는 한 shebang이 가리키는 모든 프로그램에 의해 실행됩니다. 를 사용하면 #!/bin/bash에 의해 실행됩니다 bash.

관련 정보