Cách khắc phục Tên tệp quá dài Vấn đề trong Windows


Nếu bạn từng thấy vấn đề này, đây có thể là một sửa chữa đơn giản cho bạn. Nếu bạn đã thấy lỗi này nhiều hơn hai lần, thì bạn cũng biết rằng đôi khi nó có thể là một vấn đề phức tạp.

Chúng tôi hy vọng bạn chỉ gặp phải loại sửa lỗi dễ dàng, nhưng chúng tôi sẽ chuẩn bị cho bạn các bản sửa lỗi ít dễ dàng hơn, được đảm bảo để làm việc.

Tại sao độ dài tên tệp thậm chí là một vấn đề trong Windows?

Có một lịch sử lâu dài về độ dài tên tệp là một vấn đề đối với các hệ điều hành như Windows. Đã có lúc bạn không thể có tên tập tin dài hơn 8 ký tự cộng với phần mở rộng tập tin 3 ký tự. Điều tốt nhất bạn có thể làm là một cái gì đó như myresume.doc. Đây là một hạn chế tại chỗ bởi thiết kế của hệ thống tệp.

Mọi thứ trở nên tốt hơn khi các phiên bản Windows mới ra mắt. Chúng tôi đã đi từ một hệ thống tệp cũ, bị giới hạn, sang một thứ gọi là Hệ thống tệp công nghệ mới (NTFS). NTFS đã đưa chúng ta đến một điểm mà tên tệp có thể dài 255 ký tự và độ dài đường dẫn tệp có thể có khả năng lên tới 32.767 ký tự. Vậy làm thế nào chúng ta có thể có tên tệp quá dài?

Windows có những thứ được gọi là biến hệ thống. Đây là các biến mà Windows dựa vào chức năng, bởi vì Windows sẽ luôn biết các biến đó có nghĩa là gì và chúng ở đâu, ngay cả khi chúng ta di chuyển các bit và byte khắp nơi. Biến hệ thống MAX_PATHlà biến giới hạn tên tệp và đường dẫn tệp dưới 260 ký tự.

Là một biến, bạn nên nghĩ rằng chúng tôi có thể thay đổi nó. Không, chúng ta không nên. Nó sẽ giống như kéo một sợi ra khỏi áo len. Ngay khi một biến hệ thống thay đổi, các biến và thành phần hệ thống khác phụ thuộc vào chúng bắt đầu làm sáng tỏ.

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

Làm thế nào để chúng tôi sửa nó?

Cách khắc phục dễ dàng

Nếu bạn may mắn, bạn sẽ nhận được lỗi và biết chính xác tên tập tin gây ra vấn đề. Hoặc ít nhất là nơi để tìm các tập tin. Có thể bạn có một tên tệp trông giống như:

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

Rõ ràng ai là người phạm tội trong trường hợp này. Tìm tệp trong Windows Explorerhoặc Trình khám phá tệpnhư được gọi trong Windows 10, nhấp một lần vào tệp đó, nhấn F2để đổi tên tệp và thay đổi tên tập tin ngớ ngẩn đó để một cái gì đó hợp lý hơn. Vấn đề đã được giải quyết.

Cách khắc phục ít dễ dàng hơn

Luôn luôn dễ dàng khắc phục sự cố này. Đôi khi bạn không thể thay đổi tên của tệp hoặc thư mục vì bất kỳ lý do gì.

Các giải pháp sau đây sẽ thực hiện thủ thuật cho bạn. Họ khó có thể làm được.

Di chuyển, xóa, hoặc sao chép tệp hoặc thư mục bằng PowerShell

Đôi khi bạn gặp lỗi khi cố di chuyển, xóa hoặc sao chép các thư mục có số ký tự cho đường dẫn tệp lớn hơn 260.

Lưu ý rằng thư mục từ và thư mục có thể hoán đổi cho nhau. Chúng tôi sẽ sử dụng thư mục ’về phía trước. Các lệnh ghép ngắn PowerShell sau đây cũng có thể được sử dụng trên các tệp.

Có lẽ đường dẫn tệp trông giống như:

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

Đường dẫn tệp đó dài 280 ký tự. Vì vậy, chúng tôi không thể sao chép thư mục ra khỏi đó sang một nơi khác bằng phương pháp sao chép-dán bình thường. Chúng tôi gặp lỗi Đường dẫn đích quá dài.

Hãy giả sử rằng vì bất kỳ lý do gì, chúng tôi không thể đổi tên các thư mục mà tệp được lồng vào nhau. Chúng tôi làm gì?

Mở PowerShell. Nếu bạn chưa sử dụng PowerShell, hãy thưởng thức bài viết của chúng tôi Sử dụng PowerShell cho người dùng gia đình - Hướng dẫn dành cho người mới bắt đầu. Bạn có thể làm các bước tiếp theo mà không cần đọc bài viết, mặc dù.

Khi PowerShell mở, bạn sẽ ở thư mục gốc của thư mục người dùng. Theo dõi giả sử C: \ Users \ guysmclà thư mục người dùng của bạn.

Thư mục có tên Cái nàynằm trong Tài liệu thư mục. Để di chuyển vào thư mục Documents, chúng tôi sử dụng lệnh DOS cd Documents.

You ' sẽ thấy thay đổi nhanh chóng thành C: \ Users \ guysmc \ Documents. Điều đó rất tốt. Chúng tôi đang làm việc gần hơn với các thư mục sẽ giúp mọi việc dễ dàng hơn.

Sao chép thư mục bằng cách sử dụng Copy-Item

Chúng tôi muốn sao chép thư mục Thisvà thư mục của nó nội dung vào ThatNewFolder. Hãy để sử dụng lệnh ghép ngắn PowerShell Copy-Itemvới các tham số -Destination-Recurse.

-Destination cho PowerShell biết nơi chúng tôi muốn sao chép. -Recurse bảo PowerShell sao chép tất cả các mục bên trong đến đích. Sao chép để lại bản gốc ở nơi chúng tồn tại và tạo ra tất cả những cái mới ở đích.

Sao chép-Mục này strong>

Di chuyển thư mục bằng Move-Item

Giả sử chúng tôi muốn di chuyển thư mục này, và tất cả các thư mục và tệp trong đó, thành ThatNewFolder. Di chuyển không để lại bản gốc tại chỗ.

Chúng tôi có thể sử dụng lệnh ghép ngắn PowerShell Move-Itemvới các tham số -Path-Destination. -Path xác định mục chúng tôi muốn di chuyển và -Destination cho PowerShell biết nơi chúng tôi muốn.

Lệnh ghép ngắn sẽ đặt cái này bên trong ThatNewFolder. Nó cũng sẽ di chuyển mọi thứ bên trong thư mục này. Move-Item có thể được sử dụng để di chuyển tệp hoặc thư mục và nó hoạt động bất kể đường dẫn tệp hoặc độ dài tên tệp.

Move-Item -Path This -Destination ThatNewFolder

Để đảm bảo nó hoạt động, hãy sử dụng cd ThatNewFolderđể vào ThatNewFolder. Sau đó, sử dụng lệnh dirđể liệt kê các thư mục trong ThatNewFolder. Bạn sẽ thấy thư mục này nằm trong đó.

Xóa thư mục bằng cách sử dụng mục xóa

Nếu chúng tôi muốn xóa thư mục Thisvà mọi thứ trong đó, chúng tôi sử dụng Xóa -Mặtcmdlet.

Lệnh ghép ngắn Remove-Item có một số an toàn tích hợp sẵn gây khó khăn cho việc xóa một thư mục với những thứ bên trong nó. Trong ví dụ của chúng tôi, chúng tôi biết rằng chúng tôi muốn xóa mọi thứ, vì vậy chúng tôi sẽ sử dụng các tham số -Recurseđể làm cho nó xóa mọi thứ bên trong và -Forceđể thực hiện điều đó mà không cần hỏi chúng tôi nếu chúng tôi chắc chắn cho mọi mục bên trong.

Được cảnh báo! Phục hồi bất cứ thứ gì bị xóa theo cách này sẽ vô cùng khó khăn. Bạn có thể thử các phương thức trong  Làm thế nào để khôi phục các tập tin vô tình bị xóa, nhưng đừng mong đợi nhiều.

Xóa- Mục này -Recurse -Force

Bạn có thể sử dụng lại lệnh dir để đảm bảo rằng nó đã biến mất.

Tạo Windows 10 chấp nhận đường dẫn tệp dài

Nếu bạn biết rằng bạn sẽ sử dụng các đường dẫn tệp dài và tên tệp dài liên tục, việc Windows hoạt động sẽ giúp bạn dễ dàng hơn. Không có ý nghĩa khi sử dụng PowerShell để thực hiện công việc mỗi ngày.

Có hai cách chúng ta có thể làm điều này. Một dành cho người dùng Windows 10 Home và cái còn lại dành cho người dùng Windows 10 Pro hoặc Enterprise. Các phương pháp này có thể hoạt động cho Windows 8.1 trở về trước, nhưng chúng tôi không thể đảm bảo điều đó.

Làm cho Windows 10 Home chấp nhận Đường dẫn tệp dài

Để Windows 10 Home chấp nhận đường dẫn tệp dài, chúng tôi cần để mở Trình chỉnh sửa sổ đăng ký. Nếu bạn đã từng làm việc trong Registry Editor trước đây, hãy thận trọng. Vô tình xóa hoặc thay đổi mọi thứ ở đây có thể ngăn Windows hoạt động hoàn toàn.

Luôn tạo bản sao lưu sổ đăng ký của bạn trước khi thực hiện bất kỳ thay đổi nào. Tìm hiểu mọi thứ bạn cần biết về điều đó trong  Hướng dẫn cơ bản để sao lưu và khôi phục Windows Registry.

Khi bạn đã mở Registry Editor và sao lưu của bạn được thực hiện, hãy điều hướng đến vị trí HKEY_LOCAL_MACHINE \ HỆ THỐNG \ CurrentControlset \ Control \ FileSystemvà tìm khóa LongPathsEnables.

Nhấp đúp vào LongPathsEnables. Trong trường Dữ liệu giá trị:, hãy đảm bảo số 1nằm trong đó. Nhấp vào OKđể cam kết thay đổi. hình>

Thoát Trình chỉnh sửa sổ đăng ký và bạn sẽ có thể làm việc với các đường dẫn tệp dài điên rồ ngay bây giờ.

Tạo Windows 10 Pro hoặc Enterprise chấp nhận đường dẫn tệp dài

Để cho phép Windows 10 Pro hoặc Doanh nghiệp sử dụng đường dẫn tệp dài, chúng tôi sẽ sử dụng Trình chỉnh sửa chính sách nhóm. Nó là một công cụ cho phép chúng ta thiết lập các chính sách về cách Windows hoạt động ở cấp độ máy tính và người dùng.

Chúng tôi đã có một số bài viết về việc sử dụng chính sách nhóm để thực hiện những việc như  vô hiệu hóa hoặc kích hoạt tùy chọn Internet Explorer hoặc  thêm một tin nhắn vào màn hình đăng nhập.

Mở Trình chỉnh sửa chính sách nhóm bằng cách đi tới trình đơn Bắt đầuvà nhập vào gpedit. Kết quả hàng đầu phải là Chỉnh sửa chính sách nhóm. Nhấp đúp vào đó.

Khi Trình chỉnh sửa chính sách nhóm mở, hãy điều hướng đến Cấu hình máy tính>Mẫu quản trị>Hệ thống>Hệ thống tệp. Ở đó bạn sẽ thấy chính sách Kích hoạt đường dẫn dài Win32.

Nhấp đúp vào nó để chỉnh sửa cài đặt chính sách. Thay đổi nó từ Đã tắtthành Đã bật, sau đó nhấp vào nút OKđể thực hiện thay đổi.

Chính sách có thể không có hiệu lực ngay lập tức. Tuy nhiên, bạn có thể  buộc chính sách nhóm phải cập nhật.

Đó là

Có một số cách khác để xử lý các tên tệp và đường dẫn tệp dài, nhưng những gì chúng ta đã trải qua ở đây là những phương pháp đơn giản nhất, hiệu quả nhất.

Lỗi không mở được file Word 2007, Word 2010, Word 2013...

bài viết liên quan:


17.07.2019