Улучшить существующий псевдоним для динамической замены текста командной строки

Улучшить существующий псевдоним для динамической замены текста командной строки

.bashrcУ меня есть такой псевдоним :

alias ylog = "yarn logs -applicationId"

Это хорошо работает, когда я это делаю ylog application_123.

Иногда названия моих работ появляются в форме job_123вместо , application_123и чтобы получить , ylogмне нужно вручную заменить текст «работа» на «приложение» в командной строке.

Можно ли улучшить псевдоним так, чтобы получилось следующее:

  • ylog job_123решаетylog application_123
  • ylog application_123решаетylog application_123

решение1

Bash не допускает параметров в псевдонимах, поэтому вам необходимо определить и использовать функцию, например:

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

Связанный контент