Это потому, что find является встроенной в cmd оболочкой, поэтому она даже не пытается пройти по пути поиска исполняемого файла.
В общем, символические ссылки Cygwin не будут поняты в Windows, но, как объяснено https://cygwin.com/cygwin-ug-net/using.html#pathnames-symlinks, в современных версиях Windows возможно , позволяющих создавать собственные символические ссылки Windows в файловых системах NTFS, если ссылка не существует. кросс-файловые системы.
Я бы хотел вместо этого просто обернуть его, скажем, в пакетный скрипт, помещенный в ваш Cygwin /usr/local/bin
с именем, подобным cygfind.bat
(или как вы хотите его назвать), который явно вызывает Cygwin's find
от C:\path\to\find.exe
.
Преимущество подхода-оболочки заключается в том, что если вы обновите Cygwin и обновите find
, пакетный сценарий, обертывающий его, будет по-прежнему работать прозрачно.
Я никогда не пробовал сам, но согласно этому ответу вы также можете использовать специальную переменную @doskey
для переопределения встроенных команд cmd.