Cách dòng lệnh gửi tệp đến thùng rác là gì?


41

Có chương trình dòng lệnh nào có thể gửi tệp đến thùng rác không? Đây là trên XP và Vista.


2
Khác với 'del'?
xương chậu

2
Bạn đang sử dụng hệ điều hành nào?
ChrisF

đã thoát để thêm XP và Vista
ngay từ

11
@pelms delxóa vĩnh viễn nó, không di chuyển nó vào thùng rác.
MiffTheFox

2
Sau đó, bạn phải nghĩ rằng không có lý do gì để có Bin cả. Theo logic của bạn, tại sao tái chế các tệp từ Explorer thay vì chỉ xóa chúng vĩnh viễn? Bạn có thể không thấy sử dụng, nhưng chúng tồn tại. Mới gần đây, tôi muốn xóa một đống tệp khỏi nhiều thư mục, nhưng muốn kiểm tra lại chúng trước khi xóa sạch chúng. Cách duy nhất / dễ nhất để làm là chạy một forvòng lặp từ dấu nhắc lệnh để gửi chúng vào thùng, sau đó tôi có thể thấy tất cả chúng được hợp nhất ở một nơi để đảm bảo rằng chỉ có các tệp tôi muốn xóa ở đó và khôi phục bất kỳ tập tin không chính xác.
Synetech

Câu trả lời:


31

CmdUtils có một tiện ích được gọi là Recyclechính xác. [ tải trực tiếp ]

Thêm thông tin :

Để sử dụng lệnh tái chế, hãy tải xuống tệp zip CmdUtils và giải nén exe vào thư mục Windows của bạn. Thêm chúng vào thư mục Windows sẽ cho phép bạn truy cập lệnh trên toàn cầu mà không cần phải chỉ định toàn bộ đường dẫn đến tệp thực thi. Sau đó, bạn có thể bắt đầu sử dụng lệnh tái chế bằng cách nhập vào;

recycle filename.txt

Bạn cũng có thể chỉ định các ký tự đại diện bằng các lệnh để nhập vào tái chế * .txt sẽ tái chế bất kỳ tệp văn bản nào trong thư mục hiện tại. Ngoài ra còn có một tùy chọn để chặn hộp thoại xác nhận xóa bằng cách sử dụng cờ lực với lệnh.

Để xóa một tập tin mà không cần phải xác nhận là sử dụng lệnh

recycle –f filename.txt

Cờ của Wapf sẽ cho lệnh ra lệnh tái chế mà không hiển thị cho bạn hộp thoại xác nhận.


19

Nếu bạn đã cài đặt powershell:

$sh = new-object -comobject "Shell.Application"
$ns = $sh.Namespace(0).ParseName("PATH\TO\FILE\TO\DELETE")
$ns.InvokeVerb("delete")

2
+1 Bất kỳ giải pháp quyền hạn nào cũng sẽ nhận được phiếu bầu của tôi. Tôi hy vọng Windows tiếp theo thay thế cmd.exe bằng PowerShell.
BinaryMisfit

2
Tôi nghi ngờ điều đó sẽ xảy ra trong một thời gian rất dài. :)
EBGreen

1
Điều đó là quá chậm, đặc biệt là nếu tái chế nhiều tệp (ví dụ: bản sao PS for /r %i in (foobar.tmp) do recycle "%i").
Synetech

1
@BinaryMisfit cuối cùng cũng xảy ra với Windows 10
phuclv

4

Tôi đã có câu hỏi này trong một thời gian dài - cuối cùng tôi đã đưa vấn đề vào tay của chính mình và tôi đã cuộn lại công cụ tái chế tiện ích của riêng mình

Tôi đã xem Recycle.exetrong CmdUtils. Vấn đề ở đây là nó bật ra hộp thoại "Bạn có chắc không" truyền thống khi bạn tái chế (có thể xóa bằng cách thêm đối số -f). Chương trình của tôi chỉ thực hiện nó (vì bạn luôn có thể hoàn tác) mà tôi nghĩ là phù hợp hơn cho các mục đích kịch bản.


Tôi mới chạy nó trên Windows Server 2008R2 và nó không hoạt động.
dthree 30/03/2016

Không hoạt động trên Windows 7. Tôi chỉ gặp lỗi "Không thể khởi động ứng dụng ..." và nếu tôi nhấp để biết thêm thông tin, tôi được đưa đến microsoft.com: ". Lỗi khởi tạo NET Framework: Quản lý trải nghiệm người dùng" .
ashleedawg

4

Không có cách tích hợp để làm điều này, nhưng có các công cụ của bên thứ ba có thể. Tôi đã kiểm tra thư mục kết xuất chương trình của mình và tìm thấy một vài tùy chọn. Tất cả đều hoạt động như nhau (ví dụ recycle filename.ext:), nhưng chúng khác nhau về hiệu suất, vì vậy nó phụ thuộc vào nhu cầu của bạn là gì (ví dụ: bạn có tái chế nhiều tệp không?)

  • Tái chế của MaDdoG Software rất nhanh và không có đầu ra, nhưng có thể gây ra một lỗi bí ẩn không tìm thấy
  • DeleteXP của EasyTools chậm vì nó hiển thị tiến trình tới bàn điều khiển, nhưng nếu bạn chuyển hướng nó đến nul, thì đó là cách nhanh nhất và đáng tin cậy
  • Tái chế cmd của Chris Yuen là chậm nhất, ngay cả khi chuyển hướng đầu ra (được định dạng kém) sangnul


1

Tôi đã thử các chương trình khác nhau để di chuyển (các) tệp vào thùng rác, nhưng không hài lòng với chúng vì nhiều lý do.

Vấn đề chính nhất là thiếu thông báo trạng thái hoặc thông báo lỗi. Một số chỉ thất bại trong âm thầm, vì vậy bạn nghĩ rằng chương trình đã tái chế một cái gì đó nhưng thực tế không làm gì cả!

Để khắc phục điều này, tôi đã viết một tiện ích dòng lệnh gọi là bin-it để di chuyển (các) tệp được chỉ định vào thùng rác Windows. Nó hỗ trợ ký tự đại diện và cung cấp đầy đủ trạng thái và báo cáo lỗi. Nếu có gì sai, bạn sẽ biết về nó!

Nó hoàn toàn miễn phí và có thể được tải xuống từ đây dưới dạng binit.zip:
http://www.akiwi.co.uk/utilities.html


Tôi khuyên bạn nên thay đổi tên. Bin Bin Nó làm cho tôi nghĩ về một cái gì đó giống như một chuyển đổi nhị phân ASCII->.
can-ned_food

1

Không sử dụng các công cụ của bên thứ ba, tôi không tin có "cách gửi tệp lệnh vào thùng rác". Bạn có thể nhận được đường dẫn đầy đủ để tái chế thùng trên hệ thống Windows 7-10 như thế này:

::get current user sid
for /f "tokens=2" %%i in ('whoami /user /NH') do set UID=%%i
:: create full path to current user recycle bin in a variable
set recyclebin=%systemdrive%\$Recycle.Bin\%UID%

echo %recyclebin%

Vấn đề là nếu bạn chỉ di chuyển một tệp trong đó thì nó không xuất hiện trong thùng rác. Bạn sẽ chỉ có thể nhìn thấy nó trong một dấu nhắc lệnh. Thùng rác là một thư mục đặc biệt. Phương pháp API của windows để di chuyển các mục vào thùng rác đổi tên tệp và lưu trữ thông tin về nó trong tệp thông tin độc quyền hoặc các tệp tùy thuộc vào phiên bản của HĐH. Các công cụ của bên thứ ba được đề xuất trong các câu trả lời ở trên gọi các phương thức API này xử lý tất cả các phương thức đó cho bạn.

Một số thông tin khác ở đây: https://dereknewton.com/2010/06/recycle-bin-forensics-in-windows-7-and-vista/


Chào mừng đến với Siêu người dùng. Câu trả lời của bạn dường như giải thích cách xây dựng đường dẫn đến Thùng rác của người dùng hiện đang đăng nhập, nhưng dường như không giải thích cách sử dụng thông tin này để gửi tệp đến thùng rác theo yêu cầu của OP. Vui lòng chỉnh sửa bài viết của bạn để bao gồm phần cuối cùng này. Cảm ơn đã đóng góp.
Tôi nói Phục hồi Monica

Điều này có hầu hết tất cả thông tin bạn cần để viết riêng, thực tế là trình bày cho bạn một thông tin, ngoại trừ việc đề cập đến dữ liệu INFO2 và $ I mà bạn cần thao tác.
can-ned_food

Hãy cho tôi biết khi câu trả lời bao gồm tập lệnh cmd.exe hoặc wsh.exe làm như vậy, và sau đó tôi sẽ upvote! :-) Chà, tôi đoán wsh không áp dụng về mặt kỹ thuật cho câu hỏi, nhưng câu hỏi khá mơ hồ.
can-ned_food

1

Không có chương trình bên ngoài - deleteJS.bat. Nó sử dụng Shell.Applicationphương thức động từ gọi. cách sử dụng rất đơn giản:

call deleteJS.bat c:\someFile.txt
call deleteJS.bat d:\someFolder

0

Bạn có thể thử RecyclIt . Nó sẽ gửi các tệp đến Thùng rác Windows thông qua dòng lệnh.

VÍ DỤ SỬ DỤNG:

recycleIt.exe C:\temp\example.txt /quit

LƯU Ý: Bạn cần thêm "/ thoát" nếu không cửa sổ sẽ mở. Điều này có thể là vấn đề cho các phiên giao diện điều khiển không đầu.

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.