rm -r ./~ é muito diferente de rm -r ~

Se, por acaso, você criar uma pasta chamada ~, seja extremamente cuidadoso.

rm -r ./~ significa ‘deletar uma pasta no meu diretório atual chamada ~’
rm -r ~ significa ‘deletar minha pasta pessoal’

não nomeie uma pasta ~. e não use ~ em seu arquivo .bashrc

(história por trás: Eu defini meu GOPATH como ‘~ / goworkspace’. go decide criar uma pasta chamada ‘~’. depois de uma pasta muito sortuda em meu diretório inicial com permissões de root me dizendo que eu não poderia excluí-la, me levou a imediatamente ctrl -c, percebi que minha pasta .ssh foi excluída na minha instância ec2. As próximas 3 horas do meu dia fui eu criando uma nova instância ec2, recuperando o que restou do meu diretório inicial …).