Portál AbcLinuxu, 23. července 2025 13:39
-printf
. Podle toho, jak se to vlastně myslí.
No ja sem spis programator-reznik. Ale zkusil bych "ls -lR > nejakej.soubor" a pak bych ten soubor nasledovne potrapil v cylku (while?)Je mi jasný že roury jsou po těch 32 letech trošku ošoupaný, ale i tak fungují stále celkem dobře
ls -lR
na jednom z čelních míst blacklistu programů, jejichž výstupy nikdy neparsovat -- a už druhý příspěvek správně říká, který program byl pro tyto situace stvořen.
#!/usr/bin/env python import os for directory in os.listdir('.'): if not os.path.isdir(directory): continue size = 0 for root, dirs, files in os.walk(directory, topdown=False): for file in files: filepath = os.path.join(root, file) if os.path.islink(filepath): continue size = size + os.path.getsize(filepath) print directory, sizeNarozdíl od "du" nepřipočítává 4096 bytů za každý adresář, takže se výsledky liší (vždy o násobky 4096). Už se mi to tam nechtělo dopisovat.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.