Como faço bash me avisar ao sobrescrever um arquivo existente?

31

Eu acho que o título é bem autoexplicativo. Tudo o que eu quero é bash me avisar sempre que eu tentar substituir um existente usando cp ou mv . Eu realmente aprecio alguma ajuda. :)

    
por sayantankhan 05.01.2013 / 11:43

2 respostas

39

Você deve usar o modo interativo que garante que você receba um 'prompt antes de sobrescrever'

cp --interactive
mv --interactive

Ou resumindo

cp -i
mv -i

Digite man cp ou man mv na sua linha de comando para saber mais.

    
por don.joey 05.01.2013 / 11:50
10

Você também deseja colocar set -o noclobber em seu .bashrc. Isso gerará um erro se você tentar sobrescrever um arquivo existente pelo redirecionamento de saída.

$ set -o noclobber
$ echo one > afile
$ echo two > afile
bash: afile: cannot overwrite existing file

Você pode forçar o redirecionamento a trabalhar com uma sintaxe especial:

$ echo two >| afile
$ cat afile
two

link

    
por glenn jackman 05.01.2013 / 13:54

Tags