Renomeia um caso de arquivo no JFS, sem distinção entre maiúsculas e minúsculas

0

Estou trabalhando em um sistema de arquivos JFS feito com a opção -O (nomes de arquivos insensíveis a maiúsculas e minúsculas).

Como posso renomear facilmente um arquivo de Test.txt para test.txt?

Usando mv report the error:

mv: ‘Test.txt’ and ‘test.txt’ are the same file

E relatórios do nautilus

The name “test.txt” is already used in this location. Please use a different name.

Agora posso renomeá-lo para Test2.txt seguido de renomear para test.txt

    
por hultqvist 20.10.2013 / 12:15

1 resposta

0

Você pode usar o comando rename .

Não é realmente um comando shell embutido, como mv , mas um script pearl que vem por padrão com a maioria das distribuições GNU / Linux. Seu uso é um pouco diferente de mv porque usa expressões regulares do Pearl para comparar com uma lista de arquivos.

Veja como usá-lo no seu caso:

rename 's/Test\.txt/test\.txt/' *

O s diz ao comando rename para pesquisar e substituir todas as ocorrências de Test.txt com test.txt . Os pontos . dentro da expressão regular devem ser escapados com \ , é por isso que os nomes dos arquivos são gravados como Test\.txt . Observe o * no final do comando, que significa examinar todos os arquivos no diretório atual.

Você pode passar a opção -n para o comando rename se quiser testá-lo sem fazer nenhuma alteração.

    
por devius 20.10.2013 / 14:03