真是倒霉,刚买不久的移动硬盘,昨天删除一个分区失败后,几个分区都不见了,拿去修,未果
换了个新的,但其中数据全没了。那是我平时收集的很有用的资料
很多都可以重新下载,但怎能想起硬盘中的所有东西
今天换硬盘回来
就像写一个保存指定路径下所有文件夹和文件名的程序
这样,如果东西丢了,看看那里有些什么,也可聊以告慰
#filesindir.py for files in directory
#result is a txt file with the name of the directory to record
#cmd:filesindir.py "dirname"
# result will be stored in the directory
#or cmd:filesindir.py "dirname" "directory to store the result"
import os
import os.path
import sys
def dirparser(directory,indent,file):
try:
dirlist=os.listdir(directory)
dirli=[]
for i in dirlist:
if(os.path.isdir(directory+'//'+i)==True):
dirli.append(directory+'//'+i)
else:
for ind in range(indent):
file.write(' ')
file.write(i+'/n')
for dir in dirli:
for ind in range(indent):
file.write(' ')
indent+=1
file.write(dir+'/n')
dirparser(dir,indent,file)
indent-=1
except:
file.write(' !!!Access denied/n')
return
if __name__ == "__main__":
argc=len(sys.argv)
dir2rec=''
dir2pla=''
if(argc==1):
print("the command is used like this :")
print(" filesindir.py /"dirname/"")
print(" filesindir.py /"dirname/" /"directory to store the result/"")
sys.exit(0)
elif(argc==2):
dir2rec=sys.argv[1]
dir2pla=sys.argv[1]
else:
dir2rec=sys.argv[1]
dir2pla=sys.argv[2]
indent=0
file=open(dir2pla+'//'+'filesindir.txt','w')
file.write('files in '+dir2rec+' :/n/n')
dirparser(dir2rec,indent,file)
file.close()
print('Done')