kifejezést. Futtattam ezt a parancsot:
find /home/ ~ -type f -size 5 "*." -a -30
de mondta find: paths must precede expression
. Nehezen tudom rávenni, hogy find
keressen egyezéseket az aktuális könyvtárban, valamint annak alkönyvtáraiban. Mit jelent ez a hiba, és hogyan tudom megszerezni az egyezéseket az aktuális könyvtárból és annak alkönyvtáraiból?
Válasz
Mint úgy tűnik, megértette, több kiindulási pontot is megadhat a find
számára; pl.
find dir1 dir2 dir3 -type f … (other arguments) …
De "*."
és -30
nem érvényesek keresési / műveleti kifejezések, ezért find
úgy gondolja, hogy több kiindulópontot ad meg a -type f
után. Talán a -name "*."
és a -mtime -30
?
PS -name "*."
minden pontnak megfelelő névvel egyezne ( .
), más néven pont vagy pont. Bár érvényes, ez meglehetősen szokatlan minta; ez valóban az, amire gondolsz?
PPS Ha az otthoni könyvtárad (amelyet ~
képvisel) /home
alatt van, akkor a parancsod felesleges, mivel kétszer fog keresni a saját könyvtáradban.