Vérifiez s'il existe un fichier (pas un répertoire) avec un nom identique à $directory.
Cela peut être dû au fait qu'il existe déjà un fichier du même nom situé dans le répertoire.
Notez qu'un répertoire ne peut pas contenir à la fois un fichier et un dossier portant le même nom sur les machines Linux.