Как найти все файлы, содержащие определенный текст в Linux? (...)
Я встретил это решение дважды:
blockquote>
find / -type f -exec grep -H 'text-to-find-here' {} \;
Если вы используете find , как в вашем примере, лучше добавьте
-s
(--no-messages
) вgrep
и2>/dev/null
в конце команды, чтобы избежать большого количества сообщений g8] Permission denied , выпущенныхgrep
иfind
:find / -type f -exec grep -sH 'text-to-find-here' {} \; 2>/dev/null
find - стандартный инструмент для поиска файлов - в сочетании с grep при поиске определенного текста - на Unix-подобных платформах. Команда find часто сочетается с xargs , между прочим.
Быстрые и простые инструменты существуют с той же целью - см. Ниже. Лучше попробуйте их, , если они доступны на вашей платформе , конечно:
Более быстрые и простые альтернативы
RipGrep - самый быстрый инструмент поиска вокруг:
rg 'text-to-find-here' / -l
ag 'text-to-find-here' / -l
ack :
ack 'text-to-find-here' / -l
Примечание: вы также можете добавить
2>/dev/null
к этим командам, чтобы скрыть много сообщений об ошибках.Предупреждение: , если вы действительно не можете этого избежать, 't искать из ' / '(корневой каталог) , чтобы избежать длительного и неэффективного поиска! Поэтому в приведенных выше примерах вам лучше заменить '/' на имя подкаталога, например. «/ home» в зависимости от того, где вы действительно хотите искать ...
Описание для MUL r/m32
- Unsigned multiply (EDX:EAX <- EAX * r/m32).
.
Это означает, что 64-бит продукт будет сохранен в EDX:EAX
, т.е. верхние 32 бита заканчиваются на EDX
, а нижние 32 бита в EAX
, Что соответствует результатам, которые вы видите, поскольку продукт должен быть 0x1DBEE41EB22A9CB.
Результат 01DBEE41 EB22A9CB
, EDX хранит большую часть. Десятичные числа не являются конкатенабельными при работе с двоичным представлением чисел.