명령줄 텍스트를 동적으로 대체하도록 기존 별칭을 개선합니다.

명령줄 텍스트를 동적으로 대체하도록 기존 별칭을 개선합니다.

.bashrc다음과 같은 별칭이 있습니다.

alias ylog = "yarn logs -applicationId"

이렇게 하면 작동합니다 ylog application_123.

job_123때때로 내 작업 이름이 대체 항목으로 나타나는 application_123경우 이를 가져오려면 ylog명령줄에서 "job" 텍스트를 "application"으로 수동으로 바꿔야 합니다.

다음과 같은 일이 발생하도록 별칭을 개선하는 것이 가능합니까?

  • ylog job_123결정ylog application_123
  • ylog application_123결정ylog application_123

답변1

Bash는 별칭에 매개 변수를 허용하지 않으므로 다음과 같이 함수를 정의하고 사용해야 합니다.

ylog() {
    yarn logs -applicationId "${1/#job_/application_}"
}

관련 정보