Question

Je suis en train d'utiliser: ls -la *randomString* dans mon script shell à la liste de tous les fichiers et répertoires qui contiennent une sous-chaîne: « randomString »

tout fonctionne bien sauf quand il rencontre un répertoire qui correspond à la sous-chaîne, quand il le fait, il va me donner quelque chose comme ceci: (Permet de dire que le nom du répertoire était "TTrandomStringTT")

-rw-r ----- 1 myName aucun 7 janvier 17 17:57 .YrandomStringY.txt

TTrandomStringTT: totale 16

drwxr-s -. X 2 myName aucun 4096 17 janvier 18h00

drwxr-s - x 3 myName aucun 4096 17 janvier 19h00 ..

ce que je veux faire est la liste

drwxr-s - x 2 hctsui aucun 4096 17 janvier 18h19 TTfrandomStringTT

comme un ls -la normale ferait

Je suis vraiment nouveau shell donc je vraiment besoin d'aide Merci beaucoup pour me aider

Était-ce utile?

La solution

Si votre glob correspond à un nom de répertoire, il liste le contenu du répertoire. Si vous ne voulez pas que cela se produise, faire ls -lad *randomString*

Autres conseils

Une autre façon vous pouvez utiliser est de trouver, qui recherche récursive pour vous.

find . -iname "*randomstring*" -ls
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top