Как узнать, работает ли символическая ссылка в Windows?

у меня много символических ссылок (Windows 7). Как узнать, работают ли они или мертвы (то есть исходный файл был удален/перемещен/переименован)?

пробовал

if not exist mylink.txt echo The link is dead

но это не работает: если есть ссылка, if exist всегда отвечу true независимо от того, мертва ссылка или нет.

5
задан Peter Mortensen
источник

1 ответов

вы можете использовать fsutil, чтобы проверить, существует ли файл символической ссылки и связанный файл.

fsutil file queryfileid mylink.txt
if errorlevel 1 echo The link is dead

Если вы хотите проверить все символические ссылки в папке, вы можете использовать

FOR %%f IN (*) DO (
  fsutil file queryfileid %%f
  if errorlevel 1 echo The link is dead
)

но вы должны позаботиться. fsutil также может выйти с кодом выхода 1 при возникновении ошибки.

3
отвечен Werner Henze 2013-06-17 07:51:12
источник

Другие вопросы junction links mklink symbolic-link windows