Advertisement
Dinosawer

acl2

Oct 5th, 2016
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.08 KB | None | 0 0
  1. import os, sys
  2. import win32file
  3. import win32security
  4. import ntsecuritycon as con
  5. import time
  6.  
  7. def copyACL(file1, file2):
  8.     sd = win32security.GetFileSecurity(file1, win32security.DACL_SECURITY_INFORMATION)
  9.     dacl = sd.GetSecurityDescriptorDacl()  # instead of dacl = win32security.ACL()
  10.  
  11.     win32security.SetFileSecurity(file2, win32security.DACL_SECURITY_INFORMATION, sd)
  12.    
  13. time1 = time.time()
  14.  
  15. for dirpath, dirnames, filenames in os.walk("C:/Users/Yorick/Downloads/Test"):
  16.     print(dirpath)
  17.     dirpath2 = dirpath.replace('Test', 'Test2')
  18.     copyACL(dirpath, dirpath2)
  19.     for dirname in dirnames:
  20.         print(dirname)
  21.         filename = os.path.join(dirpath, dirname)
  22.         filename2 = filename.replace('Test', 'Test2')
  23.         copyACL(filename, filename2)
  24.    
  25.    
  26.     for filename in filenames:
  27.         print(filename)
  28.         filename = os.path.join(dirpath, filename)
  29.         filename2 = filename.replace('Test', 'Test2')
  30.         copyACL(filename, filename2)
  31.  
  32. time2 = time.time()
  33. print('--------------------')
  34. print('Finished in '+str(time2 - time1)+'s')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement