Да, можно использовать xargs
для этого.
Например, простое:
$ locate commands.cfg | xargs grep check_dns
(Когда grep
видит несколько файлов, которые это ищет в каждом и включает печать имени файла вдоль соответствий.)
Или можно явно включить печать имени файла через:
$ locate commands.cfg | xargs grep -H check_dns
(На всякий случай один grep
назван только с 1 аргументом xargs
)
Для программ, которые только принимают один аргумент имени файла (в отличие от этого, grep
) можно ограничить количество переданных аргументов как это:
$ locate commands.cfg | xargs -n1 grep check_dns
Это не печатает названия файлов, откуда подобранные строки.
Результат эквивалентен:
$ locate commands.cfg | xargs grep -h check_dns
С современным locate/xargs можно также защитить от пробельных проблем:
$ locate -0 commands.cfg | xargs -0 grep -H check_dns
(Пробелом по умолчанию разделяет вход xargs
- который является, конечно, проблемой, когда Ваши имена файлов содержат пробел...),
Добавьте это к Вашему sources.list
:
deb http://ftp.de.debian.org/debian/ wheezy main non-free contrib
deb-src http://ftp.de.debian.org/debian/ wheezy main non-free contrib
Удостоверьтесь, что Вы используете соответствующее зеркало для своего местоположения.
Выполненный aptitude update
или apt-get update
и закончите установку.
Интерактивный режим aptitude
довольно полезно для решения зависимостей.