|
@ -31,9 +31,11 @@ try: |
|
|
# |
|
|
# |
|
|
import subprocess |
|
|
import subprocess |
|
|
# typical result (string): 'Drives: C:\ D:\ E:\ F:\ G:\ H:\ I:\ J:\ K:\ L:\ M:\ Y:\ Z:\' |
|
|
# typical result (string): 'Drives: C:\ D:\ E:\ F:\ G:\ H:\ I:\ J:\ K:\ L:\ M:\ Y:\ Z:\' |
|
|
driveStr = subprocess.check_output("fsutil fsinfo drives").decode('utf8') |
|
|
driveStr = str(subprocess.check_output("fsutil fsinfo drives")) |
|
|
# typical result (string): 'C:\ D:\ E:\ F:\ G:\ H:\ I:\ J:\ K:\ L:\ M:\ Y:\ Z:\' |
|
|
# typical result (string): 'C:\ D:\ E:\ F:\ G:\ H:\ I:\ J:\ K:\ L:\ M:\ Y:\ Z:\' |
|
|
driveStr = driveStr.strip().lstrip('Drives: ') |
|
|
# driveStr = driveStr.strip().lstrip('Drives: ') <- Doesn't work in other Languages as English. In German is "Drives:" = "Laufwerke:" |
|
|
|
|
|
FirstFound = driveStr.find(':',0,-1) # Find the first ":" and |
|
|
|
|
|
driveStr = driveStr[FirstFound + 1 : -1] # truncate to the rest |
|
|
# typical result (array of stings): ['C:\\', 'D:\\', 'E:\\', 'F:\\', |
|
|
# typical result (array of stings): ['C:\\', 'D:\\', 'E:\\', 'F:\\', |
|
|
# 'G:\\', 'H:\\', 'I:\\', 'J:\\', 'K:\\', 'L:\\', 'M:\\', 'Y:\\', 'Z:\\'] |
|
|
# 'G:\\', 'H:\\', 'I:\\', 'J:\\', 'K:\\', 'L:\\', 'M:\\', 'Y:\\', 'Z:\\'] |
|
|
drives = driveStr.split() |
|
|
drives = driveStr.split() |
|
@ -44,7 +46,7 @@ try: |
|
|
for drive in drives: |
|
|
for drive in drives: |
|
|
final_drive_name = drive.strip().rstrip('\\') # typical result (string): 'C:' |
|
|
final_drive_name = drive.strip().rstrip('\\') # typical result (string): 'C:' |
|
|
try: |
|
|
try: |
|
|
volume_info = subprocess.check_output('cmd /C dir ' + final_drive_name, stderr=subprocess.STDOUT).decode('utf8') |
|
|
volume_info = str(subprocess.check_output('cmd /C dir ' + final_drive_name, stderr=subprocess.STDOUT)) |
|
|
except Exception as e: |
|
|
except Exception as e: |
|
|
continue |
|
|
continue |
|
|
else: |
|
|
else: |
|
|