2013-06-18 3 views
6

경로를 확인하려고합니다. 심볼릭 링크 하드 링크 또는 Windows의 접속점 어떻게해야합니까? 이 작동하지 않습니다. 항상 False 내가 다음 방법으로 심볼릭 링크를 생성 반환 내가 명령 줄을 사용했습니다윈도우의 심볼릭 링크

mklink /d linkPath targetDir 
mklink /h linkPath targetDir  
mklink /j linkPath targetDir 

때문에 단지 유닉스 시스템에 os.link 및 os.symlink 사용할 수

아마에 대한 명령 행 도구가 있습니다 그것? 감사

답변

2

문서화 문자열 상태 : 윈도우는 기능이 확장을 추가하고 os.path.isfile()과 같은 os.path.isfolder()와 점검을 만들 수 있도록 링크, 파일 및 폴더, .lnk로 끝나는 있습니다에서

Test for symbolic link. 
On WindowsNT/95 and OS/2 always returns false 

:

mylink = lambda path: os.path.isfile(path + '.lnk') or os.path.isdir(path + '.lnk') 
+0

정확하지 않다고 생각합니다. 최소한 나는 또한 폴더에 대한 링크가 필요하기 때문에. 또한 어떤 확장자가 심볼릭 링크인지 보증하지 않습니다 – Eugene

+0

asnwer를 업데이트하여 폴더 가능성을 추가했습니다. –

+0

고맙습니다. 그러나 그 경로가 심볼 링크임을 보장하지는 않습니다. 모든 경로를 확인하고 싶습니다. – Eugene

0

이것은 Windows 8.1의 Python 3.3에서 NTFS 파일 시스템을 사용하여 작동합니다.

islink()는 symlink (mklink로 생성)의 경우 True를, 일반 파일의 경우 False를 반환합니다. 당신은

dir /al <myfile> 

당신에게 brakets에서 대상 경로를 표시 시도 할 수

0

:

C:\>dir /al "Documents and Settings*" 
[...] 
14.07.2009 06:08 <VERBINDUNG> Documents and Settings [C:\Users] 

참고 : 위의 같은 이상한 윈도우 OS-링크, 그것은없이 작동하지 않습니다 "* "

동일한 문제를 찾고 있었지만 지금까지 아무 것도 찾지 못했습니다.