ref: File.recursiveFiles

This commit is contained in:
relikd
2025-09-10 01:15:43 +02:00
parent 70409e4535
commit 8709725988

13
brew.py
View File

@@ -1920,9 +1920,7 @@ class InstallQueue:
class Fixer: class Fixer:
@staticmethod @staticmethod
def run(path: str) -> None: def run(path: str) -> None:
for base, dirs, files in os.walk(path): for fname in File.recursiveFiles(path):
for file in files:
fname = os.path.join(base, file)
if os.path.islink(fname): if os.path.islink(fname):
Fixer.symlink(fname) Fixer.symlink(fname)
continue continue
@@ -2698,6 +2696,15 @@ class File:
with open(fname, 'a'): with open(fname, 'a'):
os.utime(fname, None) os.utime(fname, None)
@staticmethod
def recursiveFiles(path: str) -> Iterator[str]:
''' yield only files from `os.walk(path)` '''
if os.path.isdir(path):
for base, _, files in os.walk(path):
for file in files:
if file != '.DS_Store':
yield os.path.join(base, file)
@staticmethod @staticmethod
def folderSize(path: str) -> tuple[int, int]: def folderSize(path: str) -> tuple[int, int]:
'''Calculate total size of folder and all it's content (recursively)''' '''Calculate total size of folder and all it's content (recursively)'''