cat файл или теги и xargs grep теги в файле
Я думаю, что это простая команда, но я просто не мог прийти к решению
Я хотел бы кошку файл с тегами (разделенные многими строками)
File1
ааа
БББ
Ded
а затем grep эти теги (строка за строкой) в один файл, давайте назовем его TargetFile
Я сделал следующее:
cat File1 | xagrs grep {} TargetFile
Это не делает grep на TargetFile. Как мне это сделать?
я использую mobaxterm
в данный момент
7 ответов
fgrep -f File1 TargetFile
Обратите внимание также на отсутствие бесполезного использования кошки.
Как обычно, есть несколько способов сделать это:
xargs -n 1 grep Targetfile -e < File
В зависимости от размера файлов это будет выполняться быстрее:
cat File1 | parallel -j0 grep {} TargetFile
Если количество тегов в File1 меньше количества процессов, которые вы можете запустить параллельно, то TargetFile будет считан с диска только один раз. Если TargetFile больше, чем ваш дисковый кеш, то это, вероятно, хорошая идея.
Чтобы узнать больше о GNU Parallel, смотрите вводное видео: http://www.youtube.com/watch?v=OpaiGYxkSuQ
Хорошо я думаю, что нашел ответ после поиска на других форумах
> for i in `cat File1` ; do grep $i TargetFile; done