내 목표는 스크립트를 실행 crontab
하고 해당 출력( echo
명령을 통해)을 로그 파일에 저장하는 것입니다. 그래서 나는 다음을 사용하고 있습니다 :
$HOME/folder/sh/script.sh 1>$HOME/folder/logs/script.log 2>$HOME/folder/logs/script.err
하지만 명령줄( cron
아직)에서는 로그 파일을 전혀 볼 수 없습니다. 권한이 유효합니다.
리디렉션을 제거하거나 현재 디렉터리의 파일에 대한 리디렉션을 유지하면 (올바른) 로그 내용을 볼 수 있습니다.
bash
중첩된 폴더 구조의 로그 파일에 스크립트 출력이 표시되지 않는 이유는 무엇입니까 ?
답변1
PATH 및 권한이 확실하고 다른 명령에도 동일한 리디렉션이 작동하는 경우 스크립트가 기록하려는 로그 파일 또는 폴더를 조작하고 있는 것 같습니다(모호한 리디렉션).
그렇습니까?
그렇다면 로깅과 관련된 모든 것을 조작하는 스크립트 줄을 제거하고 다시 시도하십시오.
유효하다면 정답으로 선택해 주세요.
그렇지 않은 경우 제거 2> 스크립트를 다시 실행하고 무슨 일이 일어나는지 지켜보세요. 스크립트가 파일에 쓸 수 없는 이유를 보여주는 메시지가 표시될 수도 있습니다.
행운을 빌어요!