Jump to content
Sign in to follow this  
Belini

Delete files and folders from a drive.

Recommended Posts

Belini

This script is especially useful to delete those annoying files that comes in USB stick, use with care not to accidentally delete important files of some important unit

#include <File.au3>
#include <Array.au3>
#include <String.au3>

; ======================================================
; AutoIt3 V 3.3.9.4
; Author: Belini
; Date: 07.26.2012
; Goal: Delete all the folders and files from one drive.
; Note: Use carefully at your own risk.
; ======================================================

delete_all()
Func delete_all()
Local $list, $counter = 0

$path = FileSelectFolder("Enter the path of unity", "")
If StringLen($path) > 3 Then $path = StringMid($path, 1, 3)
$list = _FileListToArray($path)
$contar = UBound($list)
$contar = $contar - 1

If $contar > 0 Then
_ArrayDisplay($list, "Please note these items will be deleted!")
$option = MsgBox(1, "delete files", "All files are deleted, or even delete?")

If $option = 2 Then
MsgBox(4096, "Canceled", "The operation was canceled", 3)
Exit
EndIf

If $option = 1 Then
While 1
$counter += 1
If FileExists($path & $list[$counter]) And FileGetAttrib($path & $list[$counter]) = "D" Then DirRemove($path & $list[$counter], 1)
If FileExists($path & $list[$counter]) And FileGetAttrib($path & $list[$counter]) = "A" Then FileDelete($path & $list[$counter])
If $counter >= $contar Then ExitLoop
Sleep(1)
WEnd
EndIf
MsgBox(4096, "Files deleted successfully!", "All files on drive " & $path & " was deleted.")
Else
MsgBox(4096, "No files to delete", "There is no file to be deleted in this unit!")
EndIf

EndFunc ;==>delete_all
Edited by Belini

Share this post


Link to post
Share on other sites
JLogan3o13

Out of curiosity, why this line?

if StringLen($caminho) > 3 then $caminho = StringMid($caminho, 1, 3)

If, for example, I am trying to delete files in C:Temp, the line above moves the directory up to C:. That could make it a bad day :)


√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites
Belini

If you choose a folder on drive eg E: test, using stringmid + stringlen the result is the same E: why the purpose of this script is to clean the entire unit.

Share this post


Link to post
Share on other sites
Belini
Belini
JScript

@Belni

This is the MS-DOS commands, be aware that this code snippet: Runwait (@ ComSpec & "/ c" & ... - serves so you can run programs including MS-DOS commands!

Type in a DOS window: Format /?

You will see an explanation of the command!

Regards,

João Carlos.

Edited by JScript

http://forum.autoitbrasil.com/ (AutoIt v3 Brazil!!!)

Somewhere Out ThereJames Ingram

somewh10.png

dropbo10.pngDownload Dropbox - Simplify your life!
Your virtual HD wherever you go, anywhere!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.