Nie rozumiem twojego problemu, dlaczego po prostu nie użyjesz sudo
?
sudo grep -r "some phrase" /path/to/restricted-dir
Na przykład:
$ sudo tree -up
.
└── [drwx------ root ] foo
├── [drwx------ root ] bar
│ └── [drwx------ root ] baz
│ └── [drwx------ root ] foobar
│ └── [-rwx------ root ] foo.txt
└── [-rwx------ root ] foo.txt
4 directories, 2 files
Jak widać powyżej, mam strukturę folderów z trzema zagnieżdżonymi podkatalogami foo
wszystkie z nich są własnością roota i tylko root ma do nich dostęp. Dlatego działa normalnie grep
zawiedzie:
$ grep -r foo foo/
grep: foo/: Permission denied
Bieganie z sudo
działa idealnie i znajduje ciąg foo
w obu plikach, które go zawierają:
$ sudo grep -r foo foo/
foo/bar/baz/foobar/foo.txt:foobar
foo/foo.txt:foobar
W przypadku bardziej złożonych poleceń można ich użyć sudo -i
jak sugeruje @FrankThomas lub su
jeśli masz root
konto włączone.