Próbuję znaleźć settings.xml
plik na moim komputerze Ubuntu. Nie mam pojęcia, gdzie to jest i w jakim katalogu się znajduje.
Próbowałem tego użyć -
ls -R | grep settings.xml
Ale nie pokazuje mi pełnej ścieżki tam, gdzie jest ... Czy jest jakieś inne polecenie, które muszę wypróbować, które może dać mi pełną ścieżkę?
ls
, prawie na pewno robisz to w niewłaściwy sposób .Odpowiedzi:
Szybkie wyszukiwanie (ale nie ostateczne):
Od
man locate
:^
I$
zapewnić, że tylko te pliki, których nazwa jestsettings.xml
a nie pliki, których nazwy zawierająsettings.xml
zostanie wydrukowany.Być może po raz pierwszy będziesz musiał uruchomić:
updatedb
(asroot
), aby zaktualizować / zbudować bazę danychlocate
.źródło
man locate
wcześniej !!! zakładając, że jest to proste narzędzie wyszukiwania. Dziękuję Ci bardzo.updatedb
tego polecenia -locate
często bez tego się nie powiedzie, dla mnie tak czy inaczejupdatedb
. Dziękuję Ci.locate '*/settings.xml'
jest prawdopodobnie bardziej przenośny wśród różnych różnych implementacjilocate
(jeśli są dostępne).Powolne, ale stałe wyszukiwanie w systemie plików, ale definitywne.
Może to zająć trochę czasu i możesz otrzymać błędy w pozwoleniach, ale się tam dostanie. Jeśli masz więcej pomysłów, gdzie może się znajdować, zmień pierwszy katalog z
/
na/where/you/guess
źródło
2>/dev/null
na końcu polecenia spowoduje usunięcie wszystkich danych wyjściowych błędów (poprzez przekierowanie stderr do urządzenia zerowego).-xdev
: Nie opuszczaj katalogów w innych systemach plików.Przykład:
źródło
drzewo to kolejny dobry sposób, jeśli nie jesteś pewien, czego dokładnie szukasz, i wydaje się być nieco szybszy:
tree -f / | grep settings.xml
Inne przydatne flagi:
-i
na grep zignoruje sprawę,-h
dla człowieka czytelnego na drzewie -- strona man ma wiele przydatnych opcji -!
źródło
tree(1)
pokazuje drzewo plików ASCII, które jest następnie okaleczanegrep(1)
.tree
, równie dobrze możesz użyć,find . type -f
który będzie szybszy.Parametry -la wypisują również długą wersję ls i katalogów. ls -la | grep settings.xml
źródło