$(date -u +%Y%m%d)가 포함된 별칭을 사용하여 매일 .zshrc를 다시 로드해야 하는 이유는 무엇입니까? [폐쇄]

$(date -u +%Y%m%d)가 포함된 별칭을 사용하여 매일 .zshrc를 다시 로드해야 하는 이유는 무엇입니까? [폐쇄]

매일 아침 다음 명령을 실행하여 매일 생성된 로그 파일을 추적합니다.

ssh -t [email protected] tail -f development/abc/$(date -u +%Y%m%d).log

이것은 훌륭하게 작동합니다. 매일 아침 그날의 로그 파일이 문제 없이 추적됩니다. 지난 금요일에 .zshrc에서 이 명령에 대해 다음 별칭을 만들었고 금요일에 완벽하게 작동했습니다.

alias abc_log='ssh -t [email protected] tail -f development/abc/$(date -u +%Y%m%d).log'

오늘 아침에 abc_log를 실행했는데 다음 오류가 반환되었습니다.

    tail: cannot open `development/abc/20160509.log' for reading: No such file or directory
Connection to 55.555.55.55 closed.

한번 실행해보니 잘 source ~/.zshrc되더군요 abc_log. 매일 아침 .zshrc를 다시 로드하고 싶지 않습니다. 제안? 감사해요!

답변1

포함된 date명령은 별칭이 생성될 때 한 번만 평가됩니다. 이것이 .zshrc를 다시 로드하면 다시 작동하는 이유입니다. djf가 제안한 대로 함수를 사용하면 매번 평가되며 이는 예상되는 동작인 것 같습니다.

관련 정보