Windows et les outils fonctionnant sur des serveurs Windows (par exemple, OneDrive) ont une limite de longueur de chemin.
Je recherche un outil de ligne de commande sous OSX / Linux / Unix pour, dans un répertoire, raccourcir tous les chemins dépassant un seuil, par exemple, en conservant les 5 premiers caractères et les 5 derniers caractères de chaque nom de dossier / fichier. des chemins trop longs, commençant par les noms des dossiers et des fichiers les plus éloignés de la racine (c'est-à-dire les plus imbriqués).
c'est à dire
folder_very_very_long_name/folder_very_very_long_name/folder_very_very_long_name/file_very_very_long_name
pourrait devenir
folder_very_very_long_name/folder_very_very_long_name/folde_name/file__name
Je peux déjà identifier les chemins gênants en utilisant:
find . -name \* -type f | perl -ne 's/(.*)/print length($1), " $1\n"/e' | sort -nu
de:
folder_very_very_long_name/folder_very_very_long_name/folde_name/file__name
existe déjà?