Possibilité d'utiliser grep simplement pour find des files dans une structure de directory?

J'aime utiliser grep, mais parfois je veux simplement searchr les noms des files dans un tree de directorys, mais je ne souhaite pas que grep ouvre les files et search en eux. Peut-on faire cela?

Il existe de nombreuses réponses à cette question, mais la réponse traditionnelle la plus correcte est d'utiliser find (1):

find / -type f -name foo\* 

finda tous les files sous le directory actuel avec un nom qui commence par foo

Essayez une expression régulière, comme

 ls -R |grep ^a 

Ceci répertorie tous les files et sous-directorys et le filter sur les noms commençant par a.

Cela ne comprend pas non plus un path.

Il existe plusieurs façons de find des files dans linux. Le meilleur à mon avis est deux. Trouver et localiser ' find ' est beaucoup plus puissant que localiser. Trouver des commands a une limitation, c'est-à-dire sa vitesse à laquelle il vous donne les résultats de votre search. Ce problème est résolu par la command locate. qui stocke un tree local en cache de directory entier, (qui est construit manuellement en exécutant la command UPDATEDB) et lorsque vous souhaitez searchr un file, utilisez simplement "localiser le nom de file" et vous obtiendrez des résultats instantanément. Lorsque la vitesse est problématique, utilisez la localization, pour autre chose, utilisez la command find.

Vous pouvez également utiliser la command Locate

Donc, d'abord, vous devez mettre à jour le Db en émettant la command updatedb (notez qu'il pourrait prendre un certain time pour finir)

que courir

 locate foo* 

Vous obtiendrez un path complet vers le file