변경된 셸 기능을 다시 로드하는 데 어려움이 있음

변경된 셸 기능을 다시 로드하는 데 어려움이 있음

~/.shell/functions.sh한 줄로 로드되는 파일에 함수가 정의되어 있습니다 ..zshrc

source ~/.shell/functions.sh

그런데 do 를 통해 함수를 변경한 후 업데이트하려고 하면 source ~/.zshrc새 버전의 함수가 로드되지 않는 것 같습니다.

즉, 저장된 버퍼의 현재 함수는 다음과 같습니다.

pparselogs () {
    while read data; do
        echo "$data" | jq -Rr '. as $line | try fromjson catch $line'
    done
}

functions그러나 zsh의 cmd 및 do 를 사용하면 functions pparselogs다음을 얻습니다.

pparselogs () {
    while read data
    do
        jq -Rr '. as $line | try fromjson catch $line' < "$data"
    done
}

명령줄 은 jq두 버전에서 서로 다릅니다. 제가 원하는 것은 첫 번째 버전입니다.

비업데이트 기능은 왜 실행되나요 source? 이 문제를 어떻게 해결할 수 있나요?

관련 정보