Renomeando a pasta usando um arquivo txt [closed]

1

Estou trabalhando no meu terminal usando bash tentando renomear as pastas:

1 2 3 4 5

Gostaria de renomeá-los de acordo com o arquivo a.txt:

a 2 
c 3 
d 5 
e 1 
b 4

A ordem no arquivo .txt é completamente aleatória. Espero encontrar uma maneira de renomear a pasta para que ela se torne:

1 > e 
2 > a 
3 > c 
4 > b 
5 > d

Existe alguma maneira de fazer isso? Note que estou usando o OSX.

    
por Ditte 31.05.2016 / 12:17

1 resposta

3

No caso simples que você mostra acima, onde cada linha tem duas "palavras", o diretório de destino e o novo nome, e onde nenhum pode conter nenhum espaço em branco, você pode simplesmente fazer:

while read -r from to; do mv "$from" "$to"; done < file 

Isso lerá cada linha em file e atribuirá a primeira cadeia (até o primeiro espaço em branco) a $from e o restante da linha a $to e, em seguida, a executar mv em cada uma delas.

    
por 31.05.2016 / 12:46

Tags