ÆÄÀ̽㿡¼­ ±ä°æ·Î(LongPath) 󸮴 ¾î¶»°Ô ÇØ¾ß ÇÒ³ª¿ä?

   Á¶È¸ 2580   Ãßõ 0    

윈도우에서 긴경로(LongPath)는 삭제가 안되는 문제가 있다보니 파이썬으로 간단하게 코딩을 해 봤습니다.

허접하지만,, 코드는 아래와 같습니다.

import os
import shutil
import sys

del_dir = sys.argv[1]      # 현재 디렉토리를 기준으로 사용자가 입력한 폴더명을 입력 받음
f_dir = "./" + del_dir        # 사용자가 입력한 디렉토리명에 대한 상대경로 작성

shutil.rmtree(del_dir, ignore_errors=True)     # 사용자가 입력한 디렉토리와 그 아래의 디렉토리, 파일 전체를 삭제

이렇게 코딩을 하고 파이썬 IDLE에서 실행을 해 보면 긴 파일명을 가진 녀석들도 삭제가 잘 됩니다.

그런데, Pyinstaller로 Exe를 만들어서 CMD에서 실행하면 긴 파일명을 가진 파일을 삭제하려다 에러가 나네요. 그나마  ignore_errors=True 옵션을 추가하니 긴파일명은 건너뛰고 나머지 파일들은 다 삭제가 됩니다.

뭐가 문제일까요? 파이썬 exe에서는 긴경로를 지원안하는걸까요?

---------------

물론,, robocopy /mir을 사용해서 삭제를 해도 되지만, 사실,, 제가 쓰기 보다는 다른사람이 Windows 7 환경등에서 쉽게 쓰게 하려고 만든거라서요...


ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
±èÁ¦¿¬ 2020-02
±ä °æ·Î »èÁ¦¹®Á¦°¡ ÀÖ³ª¿ä? ¾ó¸¶³ª ±ä °æ·Î Àΰ¡¿ä ±Ã±ÝÇؼ­¿ä
     
Á¤ÀǼ® 2020-02
ÇöÀç À©µµ¿ì 10 1909¹öÀüÀÔ´Ï´Ù.
Á¤Ã¥ÆíÁý±â¶û ·¹Áö½ºÆ®¸®ÀÇ LongPath°ü·Ã ¼³Á¤ÀÌ µÇ¾î Àִµ¥µµ ºÒ±¸ÇÏ°í, Ž»ö±â¿¡¼­ °æ·Î+ÆÄÀϸíÀÌ 260ÀÚ°¡ ³Ñ¾î°¡´Â °æ¿ì º¹»ç, »èÁ¦°¡ ¾ÈµË´Ï´Ù.
±×·±µ¥, cmdâ¿¡¼­´Â º¹»ç, »èÁ¦°¡ Àß µË´Ï´Ù.


QnA
Á¦¸ñPage 4923/5683
2014-05   4955536   Á¤ÀºÁØ1
2015-12   1492023   ¹é¸Þ°¡
2019-01   2580   ¹Ú¹®Çü
2020-09   2580   ¿¥ºê¸®¿À
2019-11   2580   Àü¼³¼ÓÀǹ̡¦
2023-02   2580   µö¸¶Àεå
2020-03   2580   ¸í¼ºÈ£
2019-08   2580   ±è°Ç¿ì
2019-11   2580   Á¦¿ÂÇÁ·Î
2021-06   2580   °¡¿Â´©¸®I°­¡¦
2020-06   2580   º´¸ÀÆù
2019-05   2580   ÀÌÁöÆ÷Åä
2019-04   2580   À嵿ÈÆ
2023-05   2580   ½ÅÀº¿Ö
2018-12   2579   Psychophysi¡¦
2021-07   2579   ·¹¹ÝÅͽº
2022-08   2579   ¿ÕÃʺ¸¿Õ
2019-12   2579   ¶÷´ÙÀ¼´Â¿°¼Ò
2019-05   2579   Dominozlol
2019-04   2578   ±è¿µ±â
2021-07   2578   ¹Ú¹®Çü
2019-06   2578   ¿£Áø¿¢½º