12
votes

Accès à un Cygwin Symlink de Windows

Je suis assez nouveau à Cygwin. J'ai créé un symbole symbolique comme suit xxx

et lorsque je vérifie le lecteur d via Windows, je vois un fichier système appelé foo . Existe-t-il un moyen de faire foo jouer comme dossier pour Windows au lieu d'un fichier système?


1 commentaires

Voici une discussion intéressante où l'un des développeurs de Cygwin a participé, le problème est grand Github.com/microsoft / WSL / Problèmes / 353


3 Réponses :


9
votes

pas que je sache. Cygwin ne met pas à jour le système d'exploitation pour avoir des liens symboliques, mais vous permet de «fausses» liens sous forme de symboles de la coquille Cygwin. Vous pouvez configurer le shell pour utiliser des fichiers Windows LNK, ce qui peut faire ce que vous voulez, mais ...

du Documentation Cygwin : < / p>

Création de raccourcis avec des cygutils

Une autre zone de problèmes est entre Liens de style UNIX, qui lient un fichier à un autre, et Microsoft .LNK Files, qui fournissent un raccourci à un fichier. Ils semblent semblables au premier coup d'œil mais, En réalité, sont assez différents. Par Par défaut, Cygwin ne crée pas liens symboliques comme fichiers .lnk, mais il y a un option de faire cela, voir la section appelé "l'environnement cygwin variable". Ces fichiers Symlink .lnk sont compatibles avec Windows-créé fichiers .Lnk, mais ils sont toujours différent. Ils n'incluent pas beaucoup de les informations disponibles dans un raccourci standard Microsoft, tel que Le répertoire de travail, une icône, etc. Le paquet Cygutils comprend un utilitaire mkshortcut pour créer Fichiers Standard Native Microsoft .LNK.

Mais voici le problème. Si Cygwin géré ces raccourcis natifs comme tout autre symbole, vous ne pouviez pas archiver les fichiers Microsoft .Lnk dans Tar Archives et gardez toutes les informations en eux. Après le déballage, ces Les raccourcis auraient perdu tout le informations supplémentaires et ne serait pas Différente que Cygwin standard liens symboliques. Donc ces deux types de Les liens sont traités différemment. Malheureusement, cela signifie que le manière habituelle unix de créer et d'utiliser Les liens symboliques ne fonctionnent pas avec natif Raccourcis Windows.


1 commentaires

La documentation Cygwin n'est-elle pas géniale!



10
votes

Windows ne sera pas en mesure de lire des symboles créés par Cygwin, mais vous pouvez créer des symboles Windows à l'aide des commandes Windows et Cygwin traitera ceux comme symboles.

sur Vista et 7, cela peut être fait avec 'mklink'. Ceci est une cmd.exe intégrée plutôt qu'un utilitaire autonome, donc si vous souhaitez l'invoquer à partir d'une coquille Bash, vous devez faire «CMD / C MKLink», et bien sûr, il ne comprendra que les chemins de Windows.

pour XP, les «outils de kit de ressources Windows» contiennent un utilitaire appelé linkd pouvant être utilisé pour créer des liens de répertoire.


0 commentaires

4
votes

Une solution alternative d'appeler mklink (/ D crée un lien de répertoire) sans fonction: xxx

Cet exemple utilise des backticks (`Commande`) pour la substitution de commande.


0 commentaires