我写了一个脚本,它将扫描共享文件夹并获取这些文件夹中的所有文件的文件年龄和一些其他文件元信息。
my_paths = []
for p in ['\\\\data\\hold\\app1','\\\\data\\hold\\app2']:
for dirpath, dirnames, filenames in os.walk(p):
my_paths.append(filenames)
for filename in filenames:
full_path = os.path.join(dirpath, filename)
if last_modified(full_path) < threshold:
string_output='Age :' +age_file(full_path)+'\n'+'File Size : '+file_size(full_path)+'\n'
print(string_output)
#create(string_output);
我必须硬编码代码中的所有共享,而不是我想让脚本从文本文件中读取,我可以更新所有路径。
text.txt
\\data\hold\app1
\\data\hold\app2
改造代码,
my_paths = []
for line in open(r'd:\mydata\text.txt').readlines():
my_paths.append(line.strip())
print my_paths
for dirpath, dirnames, filenames in os.walk(line):
my_paths.append(filenames)
for filename in filenames:
full_path = os.path.join(dirpath, filename)
if last_modified(full_path) < threshold:
string_output='Age :' +age_file(full_path)+'\n'+'File Size : '+file_size(full_path)+'\n'
print(string_output)
#create(string_output);
my_paths返回数据,如['\\ data \ hold \ app1','\\ data \ hold \ app2'],但不知怎的,其余部分无效。
你只是忘了去掉你在循环中读到的行:
...
for dirpath, dirnames, filenames in os.walk(line.strip()):
...