50 votes

Comment entrer dans un fichier ou un répertoire dont le nom contient des caractères spéciaux ?

Je veux entrer le dossier suivant dans le terminal :

Milano, Torino (Jan)-Compressed

Comment dois-je écrire la commande cd pour entrer dans ce répertoire ?

Les espaces et plusieurs autres caractères spéciaux comme \ , * , ) , ( y ? posent des problèmes lorsque j'essaie de les utiliser en ligne de commande ou dans des scripts, par exemple :

$ cd space dir
bash: cd: space: No such file or directory

$ cat space file
cat: space: No such file or directory
cat: file: No such file or directory

$ cat (
bash: syntax error near unexpected token `newline'

$ echo content >\
> ^C

$ ls ?
(  )  *  ?  \

Comment saisir des noms de fichiers ou de répertoires contenant des caractères spéciaux dans le terminal en général ?

6voto

Corey Whitaker Points 1155

Pour ouvrir un dossier contenant un espace, entourez-le de guillemets comme suit cd "Some Directory" ou en utilisant une barre oblique inverse, comme dans le cas suivant : cd /home/kudic/Radna\ površina .

4voto

user35712 Points 19

Si ce répertoire se trouve dans votre dossier personnel, tapez :

cd "Milano, Torino (Jan)-Compressed"

sinon, indiquer le chemin absolu :

cd "/…/…/Milano, Torino (Jan)-Compressed"

Si le nom du fichier contient un double guillemet, il faut l'échapper avec \"

3voto

Frederik Points 31

Une autre option, même si elle n'est pas la meilleure dans ce cas, consiste à utiliser des caractères génériques. Vous pouvez essayer :

cd *Torino*

Il est préférable d'utiliser cette méthode lorsque le nom d'un répertoire contient un mot ou une phrase distincte qui n'est pas partagée par d'autres. Par exemple, j'ai des points de montage /media/DataSSD et /media/DataHDD. L'autocomplétion ne fonctionne pas tant que je n'ai pas tapé la moitié du nom. Pour accéder à la partition de mon disque dur, je tape donc

cd /media/*HD*

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X