4
Будучи новичком в linux, мне трудно понять некоторые элементарные аспекты поиска текста.XARGS, GREP и GNU parallel
Я хочу выполнить следующее: У меня есть файл со списком absolutepaths для определенного пути.
- Я хочу, чтобы пройти через этот список файлов и Grep для конкретного шаблона
- Если шаблон найден в этом файле, я хотел бы перенаправить его на другой выходной файл.
- Поскольку эти файлы распространены в NFS, я хотел бы ускорить поиск с использованием GNU-параллели.
So..what я сделал следующим образом:
cat filepaths|xargs -iSomePath echo grep -Pl '\d+,\d+,\d+,\d+' \"SomePath\"> FoundPatternsInFile.out| parallel -v -j 30
Когда я запускаю эту команду, я получаю следующее сообщение об ошибке несколько раз:
grep: "/path/to/file/name": No such file or directory
Файл и путь существует , Может кто-нибудь указать, что я могу делать неправильно с xargs и grep?
Благодаря
Я думаю, что я понял, что может происходить здесь, я включаю переменную SomePath в кавычки. Греп не смог найти путь, заключенный в кавычки. Удаление кавычек и запуск командной строки catpath | xargs -iSomePath echo grep -Pl '\ d +, \ d +, \ d +, \ d +' SomePath> FoundPatternsInFile.out | Параллель -v -j 30, похоже, решила проблему. –
FYI - 'xargs