in src/ab/client/crypto_cli.py [0:0]
def list_dir(file_pattern, encrypt=True):
"""
列出需要加密的文件
:file_pattern: 匹配文件的正则表达式
:return:
"""
import os
import re
def include_name(oname):
if file_pattern is not None:
match = re.search(file_pattern, oname)
if match:
return True
return False
dir = os.getcwd()
target_files = []
for root, dirs, files in os.walk(dir, topdown=True):
for name in files:
if include_name(os.path.join(root, name)):
if encrypt:
if name[-4:] != SEC_FILE_POSTFIX:
target_files.append(os.path.join(root, name))
else:
if name[-4:] == SEC_FILE_POSTFIX:
target_files.append(os.path.join(root, name))
l = len(dir)
target_files = [x[l + 1:] for x in target_files]
return dir, target_files