Могу ли я сделать одну команду с "find. -Name" .sv "| xargs grep -n" слово для поиска ""

348
al01

Я пытаюсь создать псевдоним или что-то вроде команды с помощью grep и найти команду в Linux.

своего рода "find . -name ".sv" | xargs grep -n "word for finding" "

Могу ли я сделать одну команду или псевдоним find xargs grep?

поэтому я хочу использовать это с этими 3 командами.

Если я буду печатать так:

%fxgrep love 

затем найдите loveслово в подкаталоге в * .sv файлах.

0
Полезная ссылка, чтобы вы знали некоторые ключевые слова для продвижения своего собственного исследования: [В Bash, когда использовать псевдоним, когда писать сценарий, а когда писать функцию?] (Https://unix.stackexchange.com/q/30925/ 108618) Kamil Maciorowski 6 лет назад 0
Использование `xargs` усложняется, если вы хотите поддерживать файлы с пробелами в имени и т. Д., Ваша команда также может быть написана:` find. -name ".sv" -exec grep -n "слово для поиска" {} \; `(но, учитывая его форму, оно должно быть функцией, а не псевдонимом). xenoid 6 лет назад 0
@xenoid Не могли бы вы привести пример, как мы можем сделать утилиту? al01 6 лет назад 0

2 ответа на вопрос

1
Hefewe1zen

Команда alias - это то, что вы ищете

alias aliasname='commands' 
Но в вашем случае мы не можем установить аргумент, что мы пытаемся наблюдать за этим. Каждый раз, когда этот аргумент, что мы ищем какое-то слово, меняется. как мы применяем этот способ? al01 6 лет назад 0
Можно передать аргументы команде псевдонима, например, https://stackoverflow.com/questions/941338/how-to-pass-command-line-arguments-to-a-shell-alias Hefewe1zen 6 лет назад 0
1
xenoid

Использование xargs усложняется, если вы хотите поддерживать файлы с пробелами в имени и т. Д., Ваша команда также может быть записана: find . -name ".sv" -exec grep -n "word for finding" {} \;но, учитывая ее форму, она должна быть функцией:

function fxgrep { find . -name ".sv" -exec grep -n "$1" {} \; ; } 

Вызвать в кавычках, если есть пробелы:

fxgrep "several words" 
Большой! Но я могу использовать это в cshell? Как мне реализовать это в cshell? al01 6 лет назад 0
Вы не можете [определить функции в (t) csh] (https://stackoverflow.com/questions/13916515/function-instead-of-alias-in-c-shell-login-script). Но почему вы используете эту древность? xenoid 6 лет назад 0

Похожие вопросы