Les règles concernant ce qui constitue un nom de fichier Windows valide sont extrêmement complexes, consultez ici. Cela dépend du système de fichiers et notamment de l'endroit où le dossier Dropbox est monté sous Windows (étant donné que le nom complet du chemin sous Windows ne doit pas dépasser un certain nombre de caractères). Et comme OSX ne sait pas où vous monterez Dropbox sous Windows, il ne peut garantir qu'un fichier en particulier fonctionnera.
Maintenant, il y a une question plus simple sur le fait de savoir si nous pouvons trouver tous les fichiers contenant un caractère interdit dans les noms de fichier Windows, à savoir <>:"/\|?*
(selon le même document). C'est assez simple en utilisant la ligne de commande :
find . -name '*[<>:"/\\|?*]*'
Exécutez ceci dans le répertoire Dropbox (ou remplacez le .
par le répertoire Dropbox), et cela devrait vous donner une liste. Le principe est que dans un nom de fichier []
est utilisé pour dire : l'un de ces caractères. Donc je demande de lister tous les fichiers sous ce répertoire qui contiennent un de ces caractères. Dans les crochets, je n'ai besoin d'échapper qu'au backslash.
(maintenant, notez que cette commande attrapera également théoriquement de nombreux noms de fichiers qui ne sont pas valides sur OSX, et qui ne peuvent donc jamais s'y trouver, mais cela n'a pas d'importance).