Один из способов доступа к информации в выводе ls -l
- ее анализ.Например, csv.DictReader
можно использовать для сопоставления каждого столбца с полем в словаре:
import subprocess
import csv
process = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE)
stdout, stderr = process.communicate()
reader = csv.DictReader(stdout.decode('ascii').splitlines(),
delimiter=' ', skipinitialspace=True,
fieldnames=['permissions', 'links',
'owner', 'group', 'size',
'date', 'time', 'name'])
for row in reader:
print(row)
Приведенный выше код выведет словарь для каждой строки в выводе ls -l
, например:
{'group': '<group_name>',
'name': '<filename>',
'links': '1',
'date': '<modified_date>',
'time': '<modified_time>',
'owner': '<user_name>',
'permissions': '-rw-rw-r--',
'size': '<size>'}