Oui, vous pouvez monter un système de fichiers sur n'importe quel nom de répertoire légal, y compris les répertoires dont le nom est un seul symbole. Cependant, la spécification de symboles en tant que noms de fichiers peut s'avérer compliquée avec la plupart des shells, car vous devez les échapper avec une barre oblique inverse. Pour répondre à la question spécifique posée, pour monter sur un !, par exemple :
$ cd /
$ sudo mkdir \!
$ sudo mount -t proc proc ./\!
Ce qui précède fait du répertoire / ! un autre système de fichiers proc sur votre ordinateur. Vous devrez à nouveau échapper le symbole lorsque vous y ferez référence en faisant
$ cd /\!
Vous devez échapper aux symboles ! # & de la manière décrite ci-dessus. Vous n'avez pas besoin d'échapper les symboles ^ , @ $ % mais je serais prudent en utilisant certains d'entre eux.
Vous ne pouvez pas y changer de répertoire directement, comme vous pouvez le faire avec cd ~ pour aller directement dans votre répertoire personnel. Le symbole ~ est un raccourci dans le Shell, pas quelque chose de spécial dans OS. Même si vous mettez le répertoire hors de votre répertoire racine, vous devez toujours utiliser le / pour y accéder de n'importe où, comme dans :
$ cd /^
Pour faire ce que vous voulez vraiment, il existe un moyen, mais vous perdez alors la possibilité d'accéder rapidement à votre répertoire personnel. Vous pouvez utiliser le symbole ~. Si je fais ça :
$ mkdir /some/path/to/mountpoint
$ mount something /some/path/to/mountpoint
$ export HOME=/some/path/to/mountpoint
alors si j'utilise "cd ~", il me conduira au point de montage au lieu de mon répertoire personnel. Vous devriez être prudent en faisant cela, cependant, car certains scripts peuvent dépendre du fait que ~ se réfère à votre répertoire personnel réel.