KSH에서 pwd 반환 값을 사용하는 함수

KSH에서 pwd 반환 값을 사용하는 함수

나는 작은 스크립트를 작성하려고 합니다 ksh:

fDestExists (){
    cd /tmp
    read vANSWER?" >> Do you want to create a repository in pwd ? Type YES or NO"
        echo "    |----> $(fGetDatum) You typed: " $vANSWER         
        if [ "$vANSWER" = "YES" ]; then
                read vANSWER2?" >> Type your repository's name."
                mkdir -p $vANSWER2
                cd $vANSWER2
                echo "    |----> Logs will be coped in pwd."        
        elif [ "$vANSWER" = "NO" ]; then
            echo "    |----> Logs will be coped in pwd."        
        else 
            echo "    |----> You typed a wrong answer; exiting."        
            exit 1
        fi  
    pwd #return
}

여기에는 몇 가지 문제가 있습니다.

  1. echo에서 pwd 값을 어떻게 사용하나요?

  2. 값을 반환하려면 마지막 줄에서 echo [yourValue]를 사용하면 작동한다는 내용을 읽었습니다. 그런 다음 함수가 호출되는 곳에서 $?를 사용할 수 있다고 생각했습니다. 그러면 pwd로 동일한 동작을 어떻게 수행할 수 있습니까?

답변1

1: PWD 변수를 직접 사용할 수 있습니다. 예:

echo "    |----> Logs will be coped in $PWD."

2: $?마지막 명령의 반환 값(숫자)을 검색하는 데 사용됩니다. 여기에는 문자열을 전달할 수 없습니다. 반환 값은 성공 시 0, 실패 시 다른 값이어야 합니다. 이 정보를 얻으려면 return 0또는를 사용하십시오. return -1스크립트의 현재 디렉토리를 수정하면 $PWD호출자가 이를 사용할 수 있습니다.

관련 정보