A pergunta Qual é o equivalente do Linux ao DOS "dir / s / b filename"? chega perto, mas acaba reproduzindo uma operação de localização de arquivos para todos esses nomes de arquivos nomeados.
No entanto, estou procurando fazer uma comparação de diferenças de conteúdo de diretório com um diretório em uma máquina Windows e compará-lo com o que deve ser um diretório construído de maneira semelhante em uma caixa QNX . Eu quero executar o comando de enumeração de diretório em ambas as máquinas, fazer alguma manipulação de arquivo de texto para converter caracteres que delimitam o caminho e unidades raiz e o que não deve levá-los a um formato compatível para uma comparação perspicaz.
Eu posso gerar um manifesto de pasta de todos os subdiretórios e arquivos nele contidos dir /b /s
e obter a saída formatada como um monte de caminhos ...
c:\Temp>dir /b /s
c:\Temp\Subfolder1
C:\Temp\Subfolder1\File1.txt
C:\Temp\Subfolder1\File2.txt
...
Posso ver dir /s
se torna ls -R
, mas como obtenho o /B
equivalente à formatação da saída do caminho?
-name
opção, para que ela não seja filtrada por nome.Respostas:
find
pode lhe dar tudo o que você precisa. Ele tem um pouco mais de sobrecarga, pois realiza mais testes do quels
sozinho, mas se você deseja obter as informações do caminho na saída, essa pode ser a maneira mais simples de conseguir isso.Se você estiver indo para comparar dois sistemas, provavelmente deverá editar primeiro o texto, trocar
\
com/
e remover oC:
prefixo. Em seguida, classifique as listas e use-asdiff
para identificar as alterações.sed
será seu amigo aqui. Acompanhe um comentário se você também quiser.fonte
Não existe um sinalizador para o
ls
qual você solicita, mas você pode realizá-lo com várias outras ferramentas, sendo a mais fácil (possivelmente)find
:fonte
find
A expressão padrão é.
find
, mas outras implementações seguem o padrão POSIX e requerem um operando de diretório.árvore -se
-i para não recuar -f para imprimir o caminho
fonte
-bash: tree: command not found
tree
em várias distribuições Linux.tree
é minha ferramenta de escolha para inspecionar a estrutura de diretórios, mas não é instalada por padrão na maioria dos sistemas.Para obter o caminho real prefixado (supondo que isso seja importante), faça
fonte
find "${PWD}"
deve ser suficiente. Não tenho certeza se isso funciona no QNX, no entanto.pwd
/ bin / pwd externo, que também difere na maneira como eles lidam com diretórios alcançados por links simbólicos.