예를 들어 Debian에서 루트 crontab을 편집하려면 다음을 수행합니다 sudo crontab -e
. 선호하는 텍스트 편집기를 종료하려면(나노미터), 그래요 CTLR+X
.
지금까지는 괜찮았지만 crontab을 종료할 때마다 텍스트가 콘솔("stdout"으로)에 에코되도록 하려면 어떻게 해야 할까요?
목적 echo
은상기시키다다음과 같은 메시지:
p
아직 비밀번호를 변경하지 않으셨다면 , 비밀번호를 변경해주세요password[p]
!
여기서 명확하게 설명하기 위해 사용자가 crontab 편집을 마치고 콘솔을 종료할 때마다 이 메시지가 표시되기를 원합니다.
현재 버전의 Bash에서 이 작업을 수행할 수 있는 방법이 있습니까?
답변1
$EDITOR
먼저 편집기를 호출한 다음 출력을 생성하는 스크립트에 변수를 할당 할 수 있습니다 .
#! /bin/bash
vim "$1"
echo "foo bar baz"
이 호출을 사용하세요
EDITOR=/path/to/script.sh crontab -e
답변2
어리석은/추악한 접근 방식이 있습니다... 어쩌면 누군가 더 나은 해결책을 가지고 있을 수도 있습니다... crontab 바이너리를 스크립트로 바꾸고 원본 이름을 스크립트에서 호출되는 crontab.original이라는 이름으로 바꿉니다.
#!/bin/bash
crontab.original $1 #or all arguments if you wish to
echo YOUR MESSAGE
exit 0