Hur hittar jag en fil med locate i CentOS under en specifik katalog från terminal? Leta reda på sök i hela databasen!

Svar

Det finns inget alternativ för den funktionen i utdata från man locate på CentOS 6.5, åtminstone. Men du kan få pseudofunktionalitet genom att ändra en sökterm. Till exempel kan locate cron producera för mycket output, men locate "/var/log/cron" skulle begränsa resultaten till de artiklarna i locate databas som matchar söktermerna. Eller så skulle ett rör fungera: locate cron | grep "/var/log/" Annars använder du find: find /path/to/search -name "*cron*" eller liknande.

Svar

locate verkar inte ha något alternativ att göra detta, men du kan fortfarande söka i specifika kataloger med en av följande:

  • Använd jokertecken i din sökning. Exempel: locate "*/directory/*filename*"
  • Använd grep med locate. Exempel: locate filename | grep /directory/
  • Använd kommandot find. Exempel: find /my/directory/ -name filename. Du kan också begränsa din sökning till kataloger eller filer genom att lägga till -type d eller -type f. För att hitta en fil med namnet ”myScript” i din hemmapp kan du göra detta: find ~/ -name myScript -type f. Detta söker efter en fil (inte kataloger) med namnet exakt ”myScript” i din hemmapp.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *