Почему не открывается _ОС! показать опцию «Установить вместе с Windows», даже если у меня есть нераспределенное пространство?

Если вы должны сделать это из find, вам нужно вызвать оболочку:

find./ -type f -name "*.txt" -exec sh -c 'grep -EiH something "$1" | grep -E somethingelse | grep -E other' sh {} \;

Другие альтернативы включают использование xargsвместо:

find./ -type f -name "*.txt" | 
    xargs -I{} grep -EiH something {} | 
        grep -EiH somethingelse | 
            grep -EiH other

Или, что намного безопаснее для произвольных имен файлов (, если ваш findподдерживает-print0):

find./ -type f -name "*.txt" -print0 | 
    xargs -0 grep -EiH something {} | 
        grep -Ei somethingelse | 
            grep -Ei other

Или вместо этого вы можете просто использовать цикл оболочки:

find./ -type f -name "*.txt" -print0 | 
    while IFS= read -d '' file; do 
        grep -Ei something "$file" | 
            grep -Ei somethingelse | 
                grep -Ei other
    done
1
01.07.2020, 07:52
0 ответов

Теги

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