Làm cách nào để xóa tất cả các tệp Subversion khỏi một thư mục bằng PowerShell?Cách xóa đệ quy tất cả các tệp SVN bằng PowerShell
Trả lời
Nếu bạn thực sự muốn chỉ cần xóa các thư mục svn, điều này có thể giúp:
gci c:\yourdirectory -include .svn -Recurse -Force |
Remove-Item -Recurse -Force
Chỉnh sửa: Đã thêm -Force
tham chiếu đến gci
để liệt kê các thư mục ẩn và rút ngắn mã.
Keith đúng là bạn cần phải tránh xóa tệp bằng phần mở rộng .svn, bạn nên lọc các mục bằng cách sử dụng ?
.
là có một lý do tại sao chúng tôi không thể đệ quy loại trừ các tệp svn trong khi sao chép? Tôi đã thử Nguồn bản sao $ -Giá trị $ dest -Recurse -Exclude '.svn'. Nhưng điều đó không thành công. Vì vậy, tôi sao chép nó hoàn toàn và sau đó loại bỏ các tập tin .svn đệ quy bằng cách sử dụng lệnh này. – gprasant
Nó không hoạt động. Tôi đoán nó là trường hợp tương tự như nếu bạn sử dụng 'Get-ChildItem dir -recurse -exludlude ..'. '-exclude' (và như tôi nhớ chính xác cũng' -include') không chơi tốt với '-recurse'. – stej
Hoạt động hoàn hảo cho tôi. Cảm ơn –
Cách sử dụng SVN Export để nhận thanh toán sạch mà không có thư mục .svn?
Sửa
Bạn có thể muốn nhìn vào câu trả lời ở đây:
Command line to delete matching files and directories recursively
Không thể làm điều đó, đây là mã đó là từ máy khác, đó là một mớ hỗn độn. – epitka
Giả sử bạn không muốn xóa bất kỳ tập tin mà còn có thể mở rộng .svn:
Get-ChildItem $path -r -include .svn -Force | Where {$_.PSIsContainer} |
Remove-Item -r -force
Microsoft đã đáp lại đề nghị trong các ý kiến dưới đây mà Keith khai trương vào MS Connect! Tính đến PowerShell V3 bạn có thể loại bỏ các phụ (rất chậm) ống để Where {$_.PSIsContainer}
và sử dụng -directory
thay vì:
gci $path -r -include .svn -force -directory | Remove-Item -r -force
PowerShell v3 có thể được tải về cho Windows 7 tại Windows Management Framework 3.0.
Có, tốt bắt :) Tuy nhiên, tôi không giả sử có một số tập tin với phần mở rộng này. – stej
Tôi chưa bao giờ sử dụng Subversion (chỉ ClearCase & TFS) nên tôi không chắc chắn. –
BTW Tôi mong đợi ngày bạn không cần 'Where {$ _. PSIsContainer}' và tất cả những gì bạn phải làm là 'gci. -r -containerOnly'. Tôi có Get-ChildItem của tôi proxied để làm việc theo cách này nhưng tôi không thể đếm trên folks khác có nó. :-( –
- 1. Xóa đệ quy SVN
- 2. Tìm kiếm tệp đệ quy bằng PowerShell
- 3. Cách xóa tệp đệ quy
- 4. Xóa các tệp bị ẩn đệ quy
- 5. Đệ quy in tất cả các tệp từ Vim
- 6. Lệnh để đệ quy xóa tất cả thư mục .svn trên Windows
- 7. Xóa tất cả các tệp sao lưu trong Linux bằng cách sử dụng tập lệnh Shell đệ quy
- 8. Nhận danh sách đệ quy của các tệp svn: ignore'd
- 9. Bash: đệ quy xóa các tệp
- 10. Đệ quy đổi tên tệp trong Powershell
- 11. Xóa thuộc tính đệ quy
- 12. windows .bat tập tin cách đệ quy liệt kê tất cả các tệp thuộc loại * .mp3
- 13. PHP hàm đệ quy để xóa tất cả các con các nút nguyên nhân stackoverflow
- 14. Đệ quy đếm các tệp bằng PHP
- 15. Cách đệ quy liệt kê tất cả các tệp và thư mục
- 16. Cách tạo một hàm đệ quy để sao chép tất cả các tệp và thư mục
- 17. Đệ quy xóa các tệp 0KB bằng cách sử dụng các cửa sổ cmd
- 18. đệ quy thêm phần mở rộng tệp cho tất cả các tệp
- 19. TCL: Tìm kiếm đệ quy các thư mục con để nguồn tất cả các tệp .tcl
- 20. Liệt kê tất cả URL kho SVN từ một thư mục ở chế độ đệ quy
- 21. Giữ x số lượng tệp và xóa tất cả các tệp khác - Powershell
- 22. Xóa đệ quy các tệp và thư mục trong C#
- 23. Quét đệ quy cho các tệp bằng xgettext
- 24. Dòng lệnh để xóa các tệp và thư mục phù hợp đệ quy
- 25. Cách xóa tất cả thư mục .svn khỏi thư mục ứng dụng của tôi
- 26. Lấy danh sách tất cả các tệp trong thư mục (đệ quy)
- 27. g ++ bao gồm tất cả/usr/include đệ quy
- 28. .gitignore bỏ qua tất cả các tệp sau đó đệ quy cho phép * .foo
- 29. Điều gì mở rộng cho tất cả các tệp trong thư mục hiện tại đệ quy?
- 30. Tìm tất cả các tệp .php trong thư mục đệ quy
có lẽ điều này không áp dụng được, nhưng có thể tạo bản sao mã của bạn từ kho lưu trữ của bạn mà không có hiện vật lật đổ hiện tại. ví dụ. bằng cách sử dụng TortoiseSVN, bạn có thể sử dụng 'SVN xuất khẩu' –