Uruchomiłem to polecenie:

find /home/ ~ -type f -size 5 "*." -a -30 

ale powiedział find: paths must precede expression. Mam trudności ze znalezieniem zgodności find w bieżącym katalogu, a także w jego podkatalogach. Co oznacza ten błąd i jak mogę uzyskać dopasowania zarówno z bieżącego katalogu, jak i jego podkatalogów?

Odpowiedź

Jak wydaje się, że rozumiesz, możesz określić wiele punktów początkowych dla find; np.

find dir1 dir2 dir3 -type f … (other arguments) …

Ale Twoje "*." i -30 nie są prawidłowymi wyszukiwanymi hasłami / działaniami, więc find uważa, że „podajesz więcej punktów początkowych po -type f. Może masz na myśli -name "*." a -mtime -30?

PS -name "*." spowoduje dopasowanie wszystkich nazw kończących się kropką ( . ), czyli kropka lub kropka. Chociaż prawidłowy, byłby to dość nietypowy wzorzec; jest to naprawdę co masz na myśli?

PPS Jeśli Twój katalog domowy (reprezentowany przez ~) znajduje się pod /home, to Twoje polecenie jest zbędne, ponieważ dwukrotnie przeszuka Twój katalog domowy.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *