Trong nhiều trường hợp, bạn sẽ bắt gặp các tên tệp và thư mục có khoảng trắng xen vào tên của chúng, đặc biệt là những tên tệp và thư mục đến từ Windows. Những khoảng trắng này thường gây khó chịu, đặc biệt là khi làm việc từ trình bao, vì bạn cần xác định chúng để chúng không được coi là tên lệnh hoặc tùy chọn riêng biệt. Do đó, trong hướng dẫn này, chúng ta sẽ xem một số cách để xóa dấu cách tự động.
Ngoài ra, chúng ta cũng sẽ xem chúng có thể được sử dụng như thế nào tệp hoặc thư mục có tên có khoảng trắng mà không ném cho bạn một lỗi.
Cách sử dụng tệp và thư mục có dấu cách
Để cố gắng không gian thoát tên của các tệp và thư mục trong thiết bị đầu cuối Linux, bạn có thể thực hiện theo những cách sau:
- Bao gồm "" (dấu ngoặc kép) trong một phần của đường dẫn có khoảng trắng hoặc trong toàn bộ đường dẫn. Ví dụ:
cd "nombre con espacio"/
- Sử dụng ký tự \ trước mỗi khoảng trắng. Ví dụ:
nano nombre\ con\ espacio.txt
Bằng những cách này, bạn sẽ bỏ qua những không gian khó chịu này. Bây giờ, để không phải sử dụng lại các tùy chọn này, có thể gây bất tiện hơn, bạn có thể làm theo các bước sau…
Cách xóa khoảng trắng khỏi tên
Bây giờ, bạn có thể sử dụng nhiều phương pháp khác nhau để làm cho các không gian tên này không còn là vấn đề nữa. Nếu bạn có một số lượng lớn các tên có dấu cách, sẽ không hợp lý khi thực hiện từng cái một, nhưng bạn có thể tự động hóa các tác vụ này để xóa hoặc thay thế khoảng trắng:
- Sử dụng lệnh đổi tên cho nó. Ví dụ: lệnh đầu tiên trong số các lệnh này xóa khoảng trắng khỏi tất cả các tệp .txt, trong khi lệnh thứ hai xóa khoảng trắng khỏi tất cả các tệp trong thư mục hiện tại:
đổi tên 's / \ s / _ / g' ./*.txt
đổi tên 's / \ s / _ / g' ./*.*
- Sử dụng find để thay thế tất cả các tên có khoảng trắng, thay thế chúng bằng _. Ví dụ: làm điều đó với tất cả .txt của thư mục hiện tại hoặc của toàn bộ FS:
find . -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \; **find / -type f -name "* *.txt" -exec bash -c 'mv "$0" "${0// /_}"' {} \;