Fazendo saída ls como dir / b / s

4

Como posso ajustar a saída de ls no Linux para que pareça a saída do comando dir /b /s no Windows?

dir /b /s output da seguinte forma:

C:\MinGW>dir /s /b 
C:\MinGW\COPYING 
C:\MinGW\COPYING.LIB
C:\MinGW\doc 
C:\MinGW\include
    
por jack 04.07.2010 / 22:17

5 respostas

6

find . -print

Isso deve produzir a mesma saída que dir /s/b

    
por 04.07.2010 / 22:29
2

ls -R lista todos os arquivos e subdiretórios recursivamente. Com ls -R1 você obtém o mesmo, mas apenas um arquivo por linha.

Nem faz a saída parecer exatamente igual a dir /b /s , mas deve estar perto o suficiente.

    
por 04.07.2010 / 22:24
2
ls -1

ou

ls -1d "$PWD"/*
    
por 04.07.2010 / 22:25
1

Depende, quão difícil é a exigência de obter "equivalência" para dir /b /s ... Esses vêm muito perto (eles não terão barras invertidas como separador de diretório, e a ordem de saída será um pouco diferente [ dir /b /s envia os diretórios 'irmãos' primeiro, antes de mergulhar em cada um para mostrar seu conteúdo]). O segundo é apenas um substituto no caso de sua versão find não usar como padrão -print action (a maioria faz isso):

find $(pwd)
find $(pwd) -print

ATUALIZAÇÃO: Eu tive um erro de digitação nos comandos acima originalmente. Eu digitei chaves "{}" em vez de as redondas "()" como elas deveriam ser. Obrigado a grawity por perceber isso.

    
por 05.07.2010 / 12:12
1

isso parece funcionar na linha de comando:

find|awk "/^\.\//{print\"$PWD\"substr(\
find|awk "/^\.\//{print\"$PWD\"substr(\%pre%,2)}"
,2)}"
    
por 30.10.2010 / 11:58

Tags