awk 라이브러리로 가는 경로

awk 라이브러리로 가는 경로

densel.awk다음 호출이 포함된 awk 파일이 있습니다.

@include "klnpan.awk"

같은 디렉터리에 있는데도 "mylib.awk"가 포함된 경로가 필요한 것 같습니다.

error: cannot open source file `klnpan.awk' for reading: No such file or directory

나는 densel.awk다음과 같이 실행

awk -f "${path}"/densel.awk

답변1

awk변수를 찾기 위해 작성되었습니다 AWKPATH. 파일을 찾을 :구분된 문자열( 과 유사 )을 포함할 수 있습니다 .$PATH

기본값은 빌드에 따라 다르지만 .:/usr/local/share/awk이와 유사할 수 있습니다. 즉, 현재 디렉터리와 시스템 디렉터리에서 파일을 찾습니다.

예를 들어 이를 애플리케이션 디렉토리로 설정할 수 있습니다.

export AWKPATH=/path/to/awk/files
awk -f densel.awk

답변2

AWKPATH를 설정하기 위해 .bashrc에서 이 작업을 수행합니다.

    if [[ -d $HOME/gawk ]] && command -v gawk >/dev/null; then
        if [[ -n $AWKPATH ]]; then
            AWKPATH=$(gawk 'BEGIN {print ENVIRON["AWKPATH"]}')
            export AWKPATH
        fi
        if [[ ":$AWKPATH:" != *:"$HOME/gawk":* ]]; then
            AWKPATH+=":$HOME/gawk"
        fi
    fi

$HOME/gawkgawk 라이브러리를 저장하는 위치로 바꾸십시오 .

또한 이러한 모든 기능은 GNU awk에만 있으므로 입력하는 데 익숙해지는 것이 좋습니다.gawk

관련 정보