cron(cron run .sh)을 통해 변수 및 틱을 사용하여 화면 명령을 실행합니다.

cron(cron run .sh)을 통해 변수 및 틱을 사용하여 화면 명령을 실행합니다.

코드가 lorem.sh파일에 있는 cron을 통해 화면 명령을 실행합니다.

크론 코드는 다음과 같습니다.* * * * * cd /home/z; ./lorem.sh

안에 lorem.sh:

screen -S screenname -X stuff $'\033[B'
sleep 1 && screen -S screenname -X stuff 2
sleep 1 && screen -S screenname -X stuff "lorem ipsum dolor"
sleep 1 && screen -S screenname -X stuff $'\n'

위 코드 lorem.sh: 첫 번째 줄은 "아래쪽 화살표"이고 네 번째 줄은 "Enter"입니다.

cron을 실행하면 lorem.sh두 번째와 세 번째 줄만 작동합니다.

lorem.sh위의 내용은 를 입력하여 터미널에서 실행하면 제대로 작동 ./lorem.sh하지만 cron을 통해서는 작동하지 않습니다.

답변1

대부분의 버전의 cronrun 명령은 기본적으로 사용되며 /bin/sh명령이 실행되는 경우 쉘 스크립트를 실행하는 데에도 사용됩니다 ( #!특정 쉘을 사용하도록 강제하는 행은 없습니다) ./bin/sh

일부 시스템에서는 /bin/sh그렇습니다 dash. 이해하지 못합니다.ANSI-C 참조 규칙bash다른 쉘과 함께 사용하십시오. 따라서 $'\n'문자열은 아마도 3자 string 으로 해석될 것입니다 $\n.

대부분의 버전에서는 cron명령을 실행할 셸을 지정할 수 있습니다. bashcrontab을 편집하여 줄을 추가하여 사용할 수 있습니다

SHELL=/bin/bash

작업을 예약하는 줄 앞에 나타납니다.

lorem.sh또는 언제든지 추가하여 사용할 수 있습니다.bash

#!/bin/bash

첫 번째 줄로.

관련 정보