Làm cách nào tôi có thể đổi tên một tệp có tên trong chính nó là một đường dẫn đầy đủ (ví dụ: bắt đầu bằng từ g g \ \)? [bản sao]


30

Câu hỏi này đã có câu trả lời ở đây:

Vô tình, tôi đã tạo một tệp có tên g:\filename.csvtrên Windows XP thông qua tập lệnh Python.

Lưu ý rằng đó g:\filename.csvlà tên tệp. Trên thực tế, nó được lưu trên ổ F :.

Tôi không thể đổi tên nó bằng dấu nhắc lệnh ( ren oldfilename newfilename) hoặc sử dụng F2trong cửa sổ Explorer. Nó nói "không thể đọc từ ổ đĩa" - Windows nghĩ rằng tệp nằm trên ổ G :.

Có cách nào để đổi tên nó không?


không *filename.csvlàm việc
BlueRaja - Daniel Pflughoeft

8
Ngoài ra, mặc dù bạn đã có giải pháp của mình, bạn có thể đăng mã đã tạo tệp không? Tôi không nghĩ các API tệp Windows thậm chí còn cho phép bạn chỉ định tên tệp không hợp lệ ..
BlueRaja - Danny Pflughoeft

5
Bạn nên gửi một lỗi cho Linux / Ubuntu. Trình điều khiển hệ thống tệp nên biết rằng đây là tên tệp không hợp lệ cho ổ đĩa được nhắm mục tiêu và do đó không nên cho phép tạo một tệp như vậy. Nó vẫn nên cho phép giải quyết các tệp như vậy nếu chúng đã tồn tại, để loại bỏ hoặc đổi tên chúng mặc dù.
Devolus


2
Thực sự không có gì không hợp lệ về tên tệp này khi có liên quan đến NTFS, đó chỉ là một hạn chế của Windows ngăn không cho nó được tham chiếu chính xác.
phogg

Câu trả lời:


21

Đây không thể là giải pháp nhanh nhất, nhưng nó sẽ hoạt động.
Nếu bạn khởi động một bản phân phối Live Linux, bạn có thể xóa nó, vì Linux sử dụng một phương pháp khác để xác định các phân vùng và sẽ không bị buộc phải nghĩ rằng tệp của bạn là một ổ đĩa. Tôi đề nghị bạn Parted Magic , có nhiều công cụ hữu ích để bảo trì đĩa và hệ thống và, bên cạnh mối quan tâm hiện tại của bạn, luôn hữu ích khi có nó trong tay.


1
Tôi đang khởi động kép với Ubuntu. Vì vậy, điều này có thể được thử dễ dàng. Hãy để tôi thử và đưa ra phản hồi ở đây. Cảm ơn.
Vineet

7
Làm xong. Từ Ubuntu, tôi đã xóa. tập tin. Cảm ơn.
Vineet

1
Tôi đã từng có câu trả lời được xếp hạng hàng đầu cho biết sử dụng \? \ Trước tên. Tôi đã sai và phương pháp đó sẽ không hiệu quả, vì vậy tôi đã xóa câu trả lời của mình. Bạn cần sử dụng phương pháp của câu trả lời này hoặc một trong những câu trả lời khác.
Scott Chamberlain

7

Nếu hệ điều hành Windows của bạn thì bạn có thể sử dụng thủ thuật sau:

1. Issue command `dir /X`
2. Find out your file in 8 dot 3 notation
3. Use 8 dot 3 notation for file operations as ren, del, copy, print and others.

Lưu ý, nếu bạn quản lý để tạo tệp có tên conhoặc một số tên dành riêng cho thiết bị Windows khác thì bạn không gặp may với cách tiếp cận này.


6

Bạn cũng có thể thử ...

Từ Windows Command Prompt:

ren "F:???filename.csv" "filename.csv"

hoặc là

ren "F:*.csv" "filename.csv"

4

Bạn luôn có thể thử Cygwin . Bộ lọc tên đường dẫn trong đó phải phù hợp hơn với loại lỗi này, vì điều này không vi phạm các tiêu chuẩn POSIX. Cài đặt bash và fileutils rồi thửrm /cygdrive/f/g:\\filename.csv

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.