Skip to content

Commit 7607ac6

Browse files
authored
Add files via upload
1 parent e628c93 commit 7607ac6

File tree

3 files changed

+145
-0
lines changed

3 files changed

+145
-0
lines changed

CleanSort.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import os
2+
import shutil
3+
4+
#Define format and directoryoutput
5+
definitions=[['doc',['.docx','.doc','.xls','.xlsx','.xps','.oxps']],['Music',['.mp3']],['Videos',['.mp4','.mvi','.avi']],['pdf',['.pdf']],['compressed',['.zip','.7z','.rar','.xz','.bz2','.tgz']],['images',['.jpg','.JPG','.tif','.jpeg','.png','.gif']],['textfiles',['.txt','.json','.py']],['programs',['.msi','.exe','.EXE']]]
6+
cur_dir='C:\\Users\\Zombie\\Downloads'
7+
8+
def CreateDir(items_dir):
9+
try:
10+
if not os.path.isdir(str(items_dir)):
11+
os.makedirs(items_dir)
12+
except OSError as e:
13+
if not os.path.isdir(str(items_dir)):
14+
raise
15+
16+
def MoveItems(item,originalpath,destpath):
17+
items_dir = cur_dir + '\\' + destpath
18+
try:
19+
shutil.move(originalpath + '\\' + item,items_dir)
20+
except shutil.Error as e:
21+
print(e)
22+
23+
24+
25+
#loop through each definition
26+
for definition in definitions:
27+
items = [x for x in os.listdir(cur_dir) if os.path.splitext(x)[1] in definition[1]]
28+
if len(items) > 0:
29+
CreateDir(cur_dir +'\\'+str(definition[0]))
30+
for i in items:
31+
MoveItems(i,cur_dir,str(definition[0]))
32+
print (definition[0]+' found -',len(items))
33+
34+
for item in os.listdir(cur_dir):
35+
if not os.path.isdir(cur_dir+'\\'+item):
36+
curext=os.path.splitext(item)[1]
37+
CreateDir(cur_dir +'\\Other\\'+curext)
38+
MoveItems(item,cur_dir,'\\Other\\'+curext)
39+
print (curext+' found -')
40+

ZipFolders -GUI.py

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
import os
2+
import shutil
3+
import send2trash
4+
import tkinter
5+
import tkinter.filedialog
6+
7+
definitions=['.zip','.tar','.rar']
8+
cur_dir='C:\\Users\\Zombie\\Downloads'
9+
10+
#processedobjects
11+
compressedlist=list()
12+
extractedfolders=list()
13+
14+
cur_dir = tkinter.filedialog.askdirectory(initialdir="/",title='Please select a directory')
15+
16+
print(cur_dir)
17+
18+
def ValidateFile(fileItem):
19+
if os.path.splitext(fileItem)[1].lower() in definitions:
20+
name=('.').join(os.path.basename(fileItem).split('.')[:-1])
21+
compressedlist.append(name)
22+
def ValidateFolder(folderName):
23+
if folderName in compressedlist:
24+
return True
25+
else:
26+
return False
27+
28+
def IterateChild(folder):
29+
for fitem in os.listdir(folder):
30+
if os.path.isdir(folder+'\\'+fitem):
31+
if ValidateFolder(fitem):
32+
extractedfolders.append(folder+'\\'+fitem)
33+
else:
34+
IterateChild(folder+'\\'+fitem)
35+
else:
36+
ValidateFile(folder+'\\'+fitem)
37+
38+
39+
#loop through each definition
40+
for item in os.listdir(cur_dir):
41+
if os.path.isdir(cur_dir+'\\'+item):
42+
IterateChild(cur_dir+'\\'+item)
43+
else:
44+
ValidateFile(cur_dir+'\\'+item)
45+
print(compressedlist)
46+
print(extractedfolders)
47+
print('Do you want to proceed with delete ? Y/N')
48+
proceed=input()
49+
if proceed.lower() == 'y':
50+
for folder in extractedfolders:
51+
try:
52+
send2trash.send2trash(folder)
53+
print('Moved to recycle bin-'+folder)
54+
except Exception as e:
55+
print(e)
56+
print('done enter any key to exit')
57+
input()

ZipFolders.py

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
import os
2+
import shutil
3+
import send2trash
4+
5+
definitions=['.zip','.tar','.rar']
6+
cur_dir='C:\\Users\\Zombie\\Downloads'
7+
8+
#processedobjects
9+
compressedlist=list()
10+
extractedfolders=list()
11+
12+
def ValidateFile(fileItem):
13+
if os.path.splitext(fileItem)[1].lower() in definitions:
14+
name=('.').join(os.path.basename(fileItem).split('.')[:-1])
15+
compressedlist.append(name)
16+
def ValidateFolder(folderName):
17+
if folderName in compressedlist:
18+
return True
19+
else:
20+
return False
21+
22+
def IterateChild(folder):
23+
for fitem in os.listdir(folder):
24+
if os.path.isdir(folder+'\\'+fitem):
25+
if ValidateFolder(fitem):
26+
extractedfolders.append(folder+'\\'+fitem)
27+
else:
28+
IterateChild(folder+'\\'+fitem)
29+
else:
30+
ValidateFile(folder+'\\'+fitem)
31+
32+
33+
#loop through each definition
34+
for item in os.listdir(cur_dir):
35+
if os.path.isdir(cur_dir+'\\'+item):
36+
IterateChild(cur_dir+'\\'+item)
37+
else:
38+
ValidateFile(cur_dir+'\\'+item)
39+
print(compressedlist)
40+
print(extractedfolders)
41+
print('Do you want to proceed with delete ? Y/N')
42+
proceed=input()
43+
if proceed.lower() == 'y':
44+
for folder in extractedfolders:
45+
send2trash.send2trash(folder)
46+
print('Moved to recycle bin-'+folder)
47+
print('done enter any key to exit')
48+
input()

0 commit comments

Comments
 (0)