Como posso renomear uma árvore de diretórios para corresponder a uma árvore salva em um arquivo?

1

Eu tenho um diretório-árvore-arquivo antigo criado usando find . -type d >old.txt . Agora quero renomear uma árvore existente que tenha a mesma estrutura exata para machear a árvore antiga. Esta questão está relacionada com this

Em outras palavras: Como posso converter o seguinte:

NEW
    ├── 01
    ├── 02
    ├── 03
    │   ├── 031
    │   └── 032
    │     └── 0321
    |       └── 03211   
    ├── 04
        ├── 041
        └── 042

de volta para isto:

OLD
├── Mercury
├── Venus
├── Earth
│   ├── Australia
│   └── Asia
│     └── Japan
|       └── Hokkido   
├── Mars
    ├── HellasBasin
    └── SyrtisCrater

usando meu old.txt (diretório-árvore) ou usando algum outro script sem tocar em nenhum arquivo nos diretórios?

    
por alien250 17.02.2018 / 18:59

1 resposta

2

Acho que não há nada que faça isso depois você só tem a árvore de diretórios antiga como arquivo e não há como correlacionar os novos nomes de diretório com os antigos.

Como o script saberia se 01 está relacionado a Mercury ou Venus ?

Existe, no entanto, essa resposta do Unix StackExchange exatamente à mesma pergunta, onde OP escreveu um script Perl , já que ninguém poderia fornecer uma resposta.

Mas eu acho que para isso funcionar, você precisa das diretivas antigas intactas, já que ele roda árvore com opções

tree --dirsfirst -spugD

    
por Robert Riedl 19.02.2018 / 10:01