Am executat această comandă:

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

a spus find: paths must precede expression. Îmi este greu să fac ca find să caute potriviri în directorul curent, precum și în subdirectoarele sale. Ce înseamnă această eroare și cum pot obține potrivirile atât din directorul curent, cât și din subdirectoarele sale?

Răspuns

Ca se pare că înțelegeți, puteți specifica mai multe puncte de plecare pentru find; de exemplu,

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

Dar "*." și -30 nu sunt termeni valabili de căutare / acțiune, deci find consideră că furnizați mai multe puncte de pornire după -type f. Poate că vrei să spui -name "*." și -mtime -30?

PS -name "*." ar potrivi toate numele care se termină cu un punct ( . ), numit punct sau punct. Deși este valid, acesta ar fi un model destul de neobișnuit; este ce vrei să spui?

PPS Dacă directorul tău principal (reprezentat prin ~) se află sub /home, atunci comanda dvs. este redundantă, deoarece va căuta în directorul de acasă de două ori.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *