Создание псевдонима для `tree -P '*name*'`

Я создаю alias для следующей команды с tree программа:

tree -P '*name*'

Это работает именно так, как я хочу. Но когда я создаю псевдоним для этой команды, команда ведет себя по-другому: она печатает только каталоги, а не файлы.

В .bash_aliases

function tree_seek {
tree -P '*$1*' 
}

alias treeseek='tree_seek'

Почему псевдоним treeseek name не делает так же, как tree -P '*name*' ,

1 ответ

Решение

В Bash одинарные кавычки ничего не интерполируют. Попробуйте вместо этого использовать двойные кавычки в вашей функции:

function tree_seek() {
  tree -P "*$1*" 
}

alias treeseek='tree_seek'
Другие вопросы по тегам