lynx를 사용하여 cron 스크립트를 실행하지 못했습니다.

lynx를 사용하여 cron 스크립트를 실행하지 못했습니다.

브라우저를 통해서만 수행할 수 있는 로그인 프로세스를 자동화하려고 합니다. 저는 이 작업을 수행하는 데 필요한 작업 스크립트를 작성하기 위해 Lynx 브라우저를 사용하고 있습니다. Lynx는 사용자의 키 입력을 파일로 덤프한 다음 -cmd_script=scriptfileLoad scripts 플래그를 허용하여 이를 수행합니다.

저는 Bobcat에 전화합니다.

lynx -accept_all_cookies -cmd_script="myscript.lynx" www.example.com

내 대화형 터미널에서 생성된 스크립트는 나에게 완벽하게 작동합니다.

cron이 작업을 실행하게 했지만 작동하지 않습니다. /var/log/everything.log를 확인했는데 스크립트가 실행될 때 lynx가 다음을 묻는 것을 확인했습니다.

Your Terminal type is unknown!
Enter a terminal type: [vt100]

이 문제를 해결하기 위해 문제를 중지하는 플래그를 사용했지만 -term=linux로그인 프로세스가 여전히 첫 번째 페이지를 통과하지 못하는 것 같습니다(로그 파일을 보면).

가능한 한 많은 제안을 시도했습니다. 대화형 터미널에서 env의 결과를 복사하여 스크립트에 붙여넣어 환경에서 문제가 해결되는지 확인했지만 안타깝게도 그렇지 않았습니다.

또한 참고: 내 로그인 프로세스에는 리디렉션이 포함됩니다(Lynx 브라우저에서는 리디렉션되지 않으므로 제공되는 링크를 따라갑니다).

답변1

단순한 실수였다는 것이 밝혀졌습니다. 나는 flag를 사용할 때 이를 스크립트와 동일한 디렉토리(일 경우 )에 -cmd_script="myscript.lynx"배치했습니다 . 나는 cron이 분명히 사용자의 홈 디렉토리에서 스크립트를 실행했기 때문에 lynx가 스크립트를 실행하지 않았다는 것을 발견했습니다. 나는 루트의 crontab을 사용하고 있기 때문에 내가 원하는 방식이 아닌 검색 을 수행하고 있습니다.myscript.lynx/root/bin/rootmyscript.lynx/root/bin

쉽게 고칠 수 있나요?-cmd_script="/root/bin/myscript.lynx"

관련 정보