Wie kann ich Total Commander dazu bringen, Cygwin-Symlinks zu erkennen?

2900
Daren Thomas

Ich liebe Total Commander. Ich liebe Cygwin. Aber sie sind nicht immer Freunde. Was mich stört, ist die Funktionsweise von Symlinks in Cygwin. Angenommen, ich mache das:

$ ln -s my/path/to/nirvana budhism 

Und dann machen Sie: (weil cygwin mich nicht sehen lässt budhism)

$ cmd Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved.  C:\projects>type budhism !<symlink> ■m y / p a t h / t o / n i r v a n a C:\projects> 

Sehen? Ich denke, eine Windows- .lnkDatei hat vielleicht auch den Trick getan, aber nein, wir haben hier eine spezielle Datei. Wäre es nicht schön, wenn Total Commander diese Datei als die Datei / den Ordner erkennt, auf den sie verweist?

Gibt es dafür ein Plugin?

3
Übrigens können Sie beim "Anzeigen" von Symlinks `file budhism 'oder` stat budhism' überprüfen, wenn Sie Informationen über einen Symlink erhalten möchten Alois Mahdal vor 12 Jahren 0
Wir alle lieben Total Commander! Rigel vor 10 Jahren 0
Dies ist nicht nur ein Cygwin-Symlink-Problem. [Total Commander kann keine Symlinks kopieren, die mit dem Windows-eigenen `mklink`-Befehl erstellt wurden] (http://i.imgur.com/pwJPzxf.png). Dan Dascalescu vor 9 Jahren 0

1 Antwort auf die Frage

2
Alois Mahdal

I hate to say, but I believe you can't do it, at least not in a reliable way. This is about Windows vs. symbolic links vs. Cygwin.

Symbolic links as they work in Linux are on filesystem level. The fact that they work with Cygwin is just that it's able to "lie to itself" with help of these special files you mention.

Although there is similar facility on Windows/NTFS, which might suggest that Cygwin could make use of them, there are so many drawbacks (they work differently on XP than on Vista+; they don't work at all with FAT partitions...) that it's reasonable that Cygwin developers chose not to use them for this simulation.

  • on Vista+ you can use mklink or mklink /d to create symlink to file or directory, respectively
  • on XP you can create junction, (which is like symlink but it only works for directories), but you have to use external tool for that (e.g. Sysinternals' junction.exe)

While I could imagine either a package for Cygwin that would make it use different technique (probably some hardcore black magic), I would be surprised if in the small overlap of Cygwin/TC users there was a developer willing to do such thing.

I also love TC. When I'm on Windows, it's my both hands. But with Cygwin, best advice I can give you are:

  • learn to use some Linux shell—e.g bash works on pretty every OS a mortal can find on Earth
  • learn to use Midnight Commander—a popular console file manager. It operates on the same basis as TC and is almost as ubiquitous as bash

As a bonus, these are both console things, so you'll be able to use them under remote ssh connection, which is a must if you ever get work with remote UNIX-like machine.

Entschuldigung, dass Sie Ihre Antwort so spät angenommen haben. Ich hatte es eigentlich total vergessen. Ich habe es gerade gefunden, als ich nach diesem Problem googelte. Und dann, kurz bevor ich den Browser-Tab geschlossen habe, ging ich, warte eine Minute: Habe ich die Frage irgendwann bearbeitet oder warum ist mein Name dort? AUF KEINEN FALL! Das ist eigentlich eine Frage, die meine Vergangenheit selbst gestellt hat ... Also, TIL, ich bin immer noch nicht klüger als ich vor mehr als einem halben Jahr war. Weiter so, Daren. Sie machen wirklich Fortschritte! Daren Thomas vor 12 Jahren 1
Zukünftige Referenz: [Cygwin kann gebeten werden, native Symlinks zu erstellen] (https://cygwin.com/cygwin-ug-net/using-cygwinenv.html), indem Sie `CYGWIN = winsymlinks: nativestrict` verwenden. grawity vor 6 Jahren 1