Windows에서 '파일 이름이 너무 깁니다'문제 해결 방법


이 문제를 본 적이 있다면 아마도 간단한 해결책 일 것입니다. 이 오류가 두 번 이상 발생한 경우 때때로 수정하기가 복잡한 문제 일 수도 있습니다.

간단한 수정 버전 만 사용하기를 희망하지만, 수정하기가 쉽지 않은 작업에 대비할 수 있도록 준비하겠습니다.

Windows에서 파일 이름 길이가 왜 문제가 되나요?

파일 이름 길이는 오랫동안 Windows와 같은 운영 체제에서 문제가되어 왔습니다. 8 자보다 긴 파일 이름과 3 자 파일 확장자를 사용할 수 없었던 시간이있었습니다. 가장 좋은 방법은 myresume.doc과 같은 것입니다. 이것은 파일 시스템의 디자인에 의해 제 한 된 것이 었습니다.

새로운 버전의 Windows가 출시되면서 상황이 개선되었습니다. 우리는 오래되고 제한된 파일 시스템에서 NTFS (New Technology File System)라는 시스템으로 이동했습니다. NTFS는 파일 이름 길이가 255 자이고 파일 경로 길이가 최대 32,767 자일 수있는 지점으로 안내했습니다. 그렇다면 너무 긴 파일 이름을 어떻게 가질 수 있습니까?

Windows에는 시스템 변수라는 것이 있습니다. 이것은 우리가 모든 곳에서 비트와 바이트를 움직일 때조차도 Windows가 변수의 의미와 위치를 항상 알기 때문에 Windows가 작동하는 데 의존하는 변수입니다. 시스템 변수 MAX_PATH는 파일 이름 및 파일 경로를 260 자 미만으로 제한하는 변수입니다.

변수이므로 변경할 수 있다고 생각합니다. 아닙니다. 스웨터에서 실을 뽑는 것과 같습니다. 하나의 시스템 변수가 변경 되 자마자 다른 시스템 변수와 그에 종속 된 구성 요소가 풀리기 시작합니다.

In_content_1 all : [300x250] / dfp : [640x360]->

그런데 어떻게 고치나요?

쉬운 수정

운이 좋으면 오류가 발생하여 정확히 어떤 파일 이름이 문제를 일으키는 지 알고 있습니다. 또는 적어도 파일을 찾을 수있는 곳. 어쩌면 다음과 같은 파일 이름이있을 수 있습니다.

C:\User\guymc\Documents\My Resumesresumewithanamesolongthatitcausesproblemsandbecomespartofsomeguysarticleonthewebhowdoyoulikemenow.docx

이 경우 가해자가 누구인지는 분명합니다. Windows 10에서 호출 된대로 Windows 탐색기또는 파일 탐색기에서 파일을 찾아 한 번 클릭하고 F2를 눌러 이름을 바꾼 다음 그 어리석은 파일 이름을보다 합리적인 것으로 변경하십시오. 문제가 해결되었습니다.

덜 쉬운 수정

이 문제를 해결하는 것이 항상 쉬운 것은 아닙니다. 어떤 이유로 든 파일 또는 디렉토리의 이름을 변경하지 못할 수 있습니다.

다음 해결책이 도움이 될 것입니다. 그들은 어렵지 않습니다.

PowerShell을 사용하여 파일 또는 디렉토리 이동, 삭제 또는 복사

파일 경로의 문자 수가 260자를 초과하는 디렉토리를 이동, 삭제 또는 복사 할 때 오류가 발생하는 경우가 있습니다.

디렉토리와 폴더라는 단어는 서로 바꿔 사용할 수 있습니다. 앞으로는‘디렉토리’를 사용하겠습니다. 파일에서 다음 PowerShell cmdlet을 사용할 수도 있습니다.

파일 경로는 다음과 같습니다.

C:\Users\guymc\Documents\This\Is\Exactly\The\Precise\Directory\Path\That\I\Need\To\Have\To\Keep\My\Files\Sorted\In\A\Manner\That\Makes\Sense\To\Me\So\Lets\Pretend\This\Is\An\Actual\Filepath\That\You\Might\Also\Have\On\Your\Windows\Computer\And\Not\Over\Think\It\Document.docx

파일 경로의 길이는 280 자입니다. 따라서 일반적인 copy-paste 방법으로는 디렉토리를 다른 곳으로 복사 할 수 없습니다. 대상 경로가 너무 길다오류가 발생합니다.

어떤 이유로 든 파일이 중첩 된 디렉토리의 이름을 바꿀 수 없다고 가정합시다. 우리는 무엇을합니까?

PowerShell을 엽니 다. 아직 PowerShell을 사용하지 않은 경우 개인 사용자 용 PowerShell 사용 – 초보자 가이드 기사를 참조하십시오. 그러나 기사를 읽지 않고 다음 단계를 수행 할 수 있습니다.

PowerShell이 ​​열리면 사용자 디렉토리의 루트에있게됩니다. C : \ Users \ guymc가 사용자 디렉토리라고 가정하고

This라는 디렉토리가 문서 디렉토리 Documents 디렉토리로 이동하려면 DOS 명령 cd Documents를 사용하십시오.

귀하의 프롬프트가 C : \ Users \ guymc \ Documents로 변경되는 것을 볼 수 있습니다. 잘 됐어요 우리는 더 쉽게 디렉토리를 만들기 위해 노력하고 있습니다.

Copy-Item을 사용하여 디렉토리 복사

디렉토리를 복사하고 싶습니다. ThatNewFolder의 내용 대상-재귀매개 변수와 함께 PowerShell cmdlet 복사 항목을 사용하겠습니다.

-대상은 PowerShell이 ​​사본의 위치를 ​​알려줍니다. -Recurse는 PowerShell에 내부의 모든 항목을 대상으로 복사하도록 지시합니다. 복사는 원본을 원래 위치에두고 목적지에 모든 새 원본을 만듭니다.

복사 항목이-대상 ThatNewFolder -Recurse

이동 항목을 사용하여 디렉토리 이동

이 디렉토리와 그 안의 모든 디렉토리와 파일을 ThatNewFolder로 이동한다고 가정 해 봅시다. 이동해도 원본은 그대로 유지되지 않습니다.

-Path-Destination매개 변수와 함께 PowerShell cmdlet 이동 항목을 사용할 수 있습니다. -Path는 이동하려는 항목을 정의하고 -Destination은 원하는 위치를 PowerShell에 알려줍니다.

이 cmdlet은 ThatNewFolder 안에 이것을 넣습니다. 또한이 디렉토리 안에있는 모든 것을 이동합니다. Move-Item을 사용하여 파일 또는 디렉토리를 이동할 수 있으며 파일 경로 또는 파일 이름 길이에 관계없이 작동합니다.

이동 항목-경로 이동-이 NewFolder 대상

작동하는지 확인하려면 cd ThatNewFolderThatNewFolder로 이동합니다. 그런 다음 dir명령을 사용하여 ThatNewFolder의 디렉토리를 나열하십시오. 이 디렉토리가 있습니다.

Remove-Item을 사용하여 디렉토리 삭제

This디렉토리 및 그 안의 모든 디렉토리를 삭제하려면 제거 -항목cmdlet.

Remove-Item cmdlet에는 몇 가지 기본 제공 안전 기능이있어 내부에있는 항목이있는 디렉터리를 삭제하기가 어렵습니다. 이 예에서는 모든 항목을 삭제하려는 것을 알고 있으므로 -재귀매개 변수를 사용하여 내부의 모든 항목을 삭제하고 -강제매개 변수를 사용하여 내부의 모든 품목에 대해 확신이 있는지 묻습니다.

주의하십시오! 이 방법으로 삭제 된 것을 복구하는 것은 극히 어렵습니다.  실수로 삭제 한 파일을 복구하는 방법 에서 방법을 시도 할 수 있지만 많이 기대하지는 마십시오.

제거- 이 항목은 -Recurse -Force입니다.

dir 명령을 다시 사용하여 사라 졌는지 확인할 수 있습니다.

Windows 10에서 긴 파일 경로를 허용하도록 설정

긴 파일 경로와 긴 파일 이름을 반복해서 사용하려는 경우 Windows를보다 쉽게 ​​사용할 수 있습니다. PowerShell을 사용하여 매일 작업을 수행하는 것은 의미가 없습니다.

이 작업을 수행하는 방법에는 두 가지가 있습니다. 하나는 Windows 10 Home 사용자를위한 것이고 다른 하나는 Windows 10 Pro 또는 Enterprise 사용자를위한 것입니다. 이러한 방법은 Windows 8.1 또는 이전 버전에서 작동 할 수 있지만 보장 할 수는 없습니다.

Windows 10 Home에서 긴 파일 경로를 허용하도록 설정

Windows 10 Home에서 긴 파일 경로를 허용하도록하려면 레지스트리 편집기를 엽니 다. 이전에 레지스트리 편집기에서 작업 한 적이 없다면 조심하십시오. 실수로 여기서 내용을 삭제하거나 변경하면 Windows가 완전히 작동하지 않을 수 있습니다.

변경하기 전에 항상 레지스트리를 백업하십시오.  Windows 레지스트리 백업 및 복원에 대한 최종 안내서 에서 이에 대해 알아야 할 모든 내용을 알아보십시오.

레지스트리 편집기를 열고 백업을 만든 후 HKEY_LOCAL_MACHINE \ 위치로 이동하십시오. SYSTEM \ CurrentControlSet \ Control \ FileSystem에서 LongPathsEnabled키를 찾으십시오.

LongPathsEnabled를 두 번 클릭하십시오. 값 데이터 :필드에서 숫자 1이 있는지 확인합니다. 확인을 클릭하여 변경 사항을 커밋합니다.

레지스트리 편집기를 종료하면 미친 긴 파일 경로로 작업 할 수 있습니다.

Windows 10 Pro 또는 Enterprise에서 긴 파일 경로를 허용하도록 설정

Windows 10 Pro 또는 엔터프라이즈에서는 긴 파일 경로를 사용하기 위해 그룹 정책 편집기를 사용합니다. Windows가 컴퓨터 및 사용자 수준에서 작동하는 방식에 대한 정책을 설정할 수있는 도구입니다.

그룹 정책을 사용하여  Internet Explorer 옵션 비활성화 또는 활성화 또는  로그온 화면에 메시지 추가 와 같은 작업을 수행하는 방법에 대한 몇 가지 기사가 있습니다.

시작메뉴로 이동하여 gpedit를 입력하여 그룹 정책 편집기를 엽니 다. 최상위 결과는 그룹 정책 수정이어야합니다. 두 번 클릭하십시오.

그룹 정책 편집기가 열리면 컴퓨터 구성>관리 템플릿>시스템>파일 시스템으로 이동하십시오. Win32 긴 경로 사용정책이 표시됩니다.

이를 두 번 클릭하여 정책 설정을 편집하십시오. 사용 안함에서 사용으로 변경 한 다음 확인버튼을 클릭하여 변경 사항을 적용하십시오.

정책 즉시 적용되지 않을 수 있습니다. 그래도  그룹 정책을 강제로 업데이트 할 수 있습니다.

그렇습니다

긴 파일 이름 및 파일 경로를 해결하는 다른 방법이 있습니다. 그러나 여기서 우리가 겪은 것은 가장 간단하고 효과적인 방법입니다.

핸드폰이 바이러스에 걸렸다는 9가지 신호

관련 게시물:


17.07.2019