Раньше у меня был этот псевдоним в tcsh для поиска файлов в файловой системе.

alias findf 'find . -name \!* -print'

Как мне написать это в оболочке bash?

4
gaitat 13 Авг 2014 в 17:48

1 ответ

Лучший ответ

Это функция оболочки, а не псевдоним (при условии, что \!* является заполнителем для псевдонима «аргументы»).

Чтобы принять только один аргумент:

findf() {
    find . -name "$1" -print
}

Чтобы принять любое количество аргументов (не то чтобы это очень полезно для аргумента -name):

findf() {
    find . -name "$@" -print
}
2
Etan Reisner 13 Авг 2014 в 17:52
Так что мне не нужно использовать директиву alias? Я получаю syntax error near unexpected token (''
 – 
gaitat
13 Авг 2014 в 17:57
Нет, вы не используете alias для функций.
 – 
Etan Reisner
13 Авг 2014 в 23:19