중첩된 명령을 사용하여 함수를 작성하는 방법

중첩된 명령을 사용하여 함수를 작성하는 방법

다음과 같이 찾기 및 CD 기능을 작성하려고 합니다.

findcd () {
        cd "$(dirname "$(find '$1' -type '$2' -name '$3')")"
}

다음과 같이 호출됩니다.

find . f [FILE_NAME]

그러나 그것은 달러 기호를 보고 내부 내용을 시행하는 것에 대해 더 많은 논쟁을 기대합니다. 이제 막 별칭과 함수를 작성하기 시작했으니 어떤 조언이라도 도움이 될 것입니다!

답변1

이 시도:

findcd () {
        cd "$(dirname "$(find "$1" -type "$2" -name "$3")")"
}

초기 시도의 문제점은 변수를 작은따옴표로 묶어서 확장되지 않았다는 것입니다. 또한 find결과가 여러 개인 경우에는 이 방법이 작동하지 않습니다.

관련 정보