Нужна небольшая помощь, мне нужен правильный синтаксис для grep и copy

В настоящее время у меня есть 3 ТБ данных на диске с небольшими или средними файлами в сотнях папок. Мне нужно найти определенные текстовые файлы, содержащие определенные слова (более одного слова). Я уже попробовал grep-ping для них. Это работает, так как печатает путь к каждому файлу. Но это длинный список, и я сейчас ищу работоспособный способ скопировать их в другую папку.

есть идеи?

Есть ли какой-нибудь способ поместить -exec cp -rv / estinationfolder в синтаксис и сделать так, чтобы он копировал все результаты в папку?

1 ответ

Да, конечно, есть способ.

Вы можете направить выходные данные grep в команду copy и предоставить требуемый каталог назначения.

Вот пример,

find . -type f | xargs grep -l "textToSearch" | cpio -pV $destination_path

этот скрипт будет копировать файлы по пути назначения, указанному в переменной destination_path

Лучшая часть этого - он будет копировать файлы, сохраняя полный путь.

Другие вопросы по тегам