ls -m com mais informações?

1

eu preciso armazenar informações de diretório de uma maneira que eu possa analisar como json.

quando eu faço ls -m, ele me dá valores separados por vírgula, mas nenhuma informação de usuário / grupo / tamanho.

bash-3.2$ ls -mp
100CANON/, 2009-11-27_1540.swf, 2009-11-27_1546.swf, 2009-11-27_1551.swf, 2009-11-30_0149.png, 429355_1.sql,
429355_1.sql.zip, About Stacks.pdf, Acrobat.com.app/

ls -l é problemático para analisar.

está lá de qualquer maneira você sabe que eu posso obter ls -l info como valores separados por vírgula (ou qualquer coisa)?

    
por Devrim 09.01.2010 / 11:15

2 respostas

5

Você pode usar stat e definir seu próprio formato de saída (consulte o parâmetro -c ).

Exemplo:

$ stat -c '{"name": "%n", "size": "%s"}' *
{"name": "directory1", "size": "4096"}
{"name": "directory2", "size": "6"}
{"name": "file1", "size": "2070"}
{"name": "file2", "size": "83013"}
    
por 09.01.2010 / 11:29
1

apenas combine a saída ls -l com alguns outros comandos, como este ls -l | tr ' ' ',' | tr '\n' ',' . Desta forma, você deve obter a saída que você precisa.

    
por 09.01.2010 / 11:25

Tags