Поиск по содержимому в системных файлах Убунты
Напиши скрипт.
find / -type f -name '*.txt' -exec grep -i "word" {} \; -print
find / -type f -name '*.txt' -exec grep -i "word" {} \; -print"-uid 0" забыл.
хорошая идея
А как тогда будет итоговый скрипт выглядеть? Или можно просто его от sudo запускатьб без uid 0?
sudo grep -rl --include='*.txt' 'pattern' /
А, кстати, я забыл, это в системных файлах я хочу искать, а не в пользовательских. И не знаю, будет ли у него расширение. Как быть в таком случае?
sudo grep -Ri 'СТРОКА' /path/
grep -r -H 'мама мыла раму' /path/to/dir
sudo grep -Ri 'СТРОКА' /path/Вы же знаете, что серв запустит поиск по /path/, и будет жаловаться, что ничего не нашлось?
grep: /path/to/dir: Нет такого файла или каталога
[localhost ~]$ grep -r -H 'мама мыла раму' /path/to/dir 2&>/dev/null
[localhost ~]$
desu: ~$ time grep -i rd catalina.out >/dev/null
real 0m0.586s
user 0m0.587s
sys 0m0.001s
0 ssh 10:27:20
desu: ~$ time grep rd catalina.out >/dev/null
real 0m0.028s
user 0m0.020s
sys 0m0.009s
0 ssh 10:27:26
desu: ~$ time grep -E '[rR][dD]' catalina.out >/dev/null
real 0m0.048s
user 0m0.027s
sys 0m0.013s
0 ssh 10:27:48
Да ещё ключ -i крайне медленно работает.Угу. Известный факт.
Но лучше пусть подождёт, чем донимает вопросами «почему по "a" не нашлось "A" и как так сделать?».
Оставить комментарий
stm4836248
Как можно осуществить? Требуется найти одно слово в файлах рута.