-i não funciona para mv

3

O homem do comando mv diz que há uma opção -i para solicitar um y / n antes que o comando seja executado, mas não está funcionando para mim. Sempre que uso mv -i , o arquivo é renomeado automaticamente sem emitir um prompt. Alguma ideia do que está acontecendo aqui?

    
por Alcuin Arundel 28.02.2015 / 19:32

2 respostas

4

O -i states

-i, --interactive
          prompt before overwrite

Logicamente você está fazendo um "mv" onde o arquivo ainda não existe. Ele só avisará se o arquivo em que você está movendo-o existir. Teste simples:

rinzwind@discworld:~/test$ ls
rinzwind@discworld:~/test$ touch 1
rinzwind@discworld:~/test$ mv -i 1 2
rinzwind@discworld:~/test$ touch 1
rinzwind@discworld:~/test$ mv -i 1 2
mv: overwrite ‘2’? y
rinzwind@discworld:~/test$ 
    
Opção
por Rinzwind 28.02.2015 / 20:00
4

A partir da página man de mv ( man mv ):

-i, --interactive
              prompt before overwrite

Portanto, mv -i mostrará um prompt em caso de sobrescrever um arquivo. Aqui está um exemplo:

Apenas mv :

$ touch foo.txt
$ touch ../bar.txt
$ mv ../bar.txt foo.txt  ##No prompt
$ ls
foo.txt

com mv -i :

$ touch foo.txt
$ touch ../bar.txt
$ mv -i ../bar.txt foo.txt 
mv: overwrite ‘foo.txt’? y  ##Prompt being shown
$ ls
foo.txt
    
por heemayl 28.02.2015 / 20:03

Tags