![$(date -u +%Y%m%d)가 포함된 별칭을 사용하여 매일 .zshrc를 다시 로드해야 하는 이유는 무엇입니까? [폐쇄]](https://linux55.com/image/88010/%24(date%20-u%20%2B%25Y%25m%25d)%EA%B0%80%20%ED%8F%AC%ED%95%A8%EB%90%9C%20%EB%B3%84%EC%B9%AD%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EB%A7%A4%EC%9D%BC%20.zshrc%EB%A5%BC%20%EB%8B%A4%EC%8B%9C%20%EB%A1%9C%EB%93%9C%ED%95%B4%EC%95%BC%20%ED%95%98%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%ED%8F%90%EC%87%84%5D.png)
매일 아침 다음 명령을 실행하여 매일 생성된 로그 파일을 추적합니다.
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가 제안한 대로 함수를 사용하면 매번 평가되며 이는 예상되는 동작인 것 같습니다.