I want to use ~/ because it is convenient (and simple. and simple means less bugs), and enclose it in quotes because it is safe against spaces and dashes. Any way to have both?
Sim, é uma boa prática usar aspas duplas. Apenas não os coloque em torno do ~/
. Deixe essa parte sem aspas:
install dotfile ~/".dotfile"
Expansões de til e nomes de diretórios domésticos difíceis
A expansão ~
usa a variável HOME
. Vamos criar um diretório com nome difícil e atribuí-lo a HOME
e ver como o shell se comporta:
$ mkdir $'/tmp/spaces and\ttabs'
$ HOME=$'/tmp/spaces and\ttabs'
$ cd ~/
$ pwd
/tmp/spaces and tabs
Assim, funcionou corretamente.