Comment ls sans récursif

J'essaie de ls certains files avec un model dans un directory. Je veux seulement scanner le premier niveau non récursif.

Mon script:

for i in $(ls $INCOMINGDIR/*$BUSSINESSDATE*) do echo $i; done 

La command ci-dessus parsing récursivement. Comment peut-il seulement scanner le directory de premier niveau?

Ne pas parsingr ls . N'utilisez pas ALL_CAPS_VARS

 for i in "$incoming_dir"/*"$business_date"*; do 

Interactif, ls a une option -d qui empêche la descente dans les sous-directorys:

 ls -d $INCOMINGDIR/*$BUSSINESSDATE* 

Il n'y a aucune raison pour que cette command soit récursive. Mais si $INCOMINGDIR/*$BUSSINESSDATE* correspond à un directory, le contenu de ce directory est affiché à la place du directory lui-même. Mais il n'y aurait pas de récursivité au-delà de ce niveau.

Utilisez cette command pour éviter cet effet:

 ls -d "$INCOMINGDIR/"*"$BUSSINESSDATE"* 

for ... in commands avec sortie ls sont risquées.

En général, la find semble être une meilleure solution

 for i in "$INCOMINGDIR/"*"$BUSSINESSDATE"*