J'ai essayé cd "~/Library/Application Support/" -bash: cd: ~/Library/Application Support/: No such file or directory
également cd ~/Library/Application Support/ -bash: cd: ~/Library/Application Support/: No such file or directory
J'ai essayé cd "~/Library/Application Support/" -bash: cd: ~/Library/Application Support/: No such file or directory
également cd ~/Library/Application Support/ -bash: cd: ~/Library/Application Support/: No such file or directory
Vous pouvez utiliser le Tab après avoir appuyé sur les premiers caractères (le reste du dossier sera alors "rempli" pour vous, par exemple, tapez cd ~/L
Tab remplit cd ~/Library/
puis tapez Ap
Tab et il remplira le reste pour vous.
S'il y a un espace entre les mots et que vous ne voulez pas utiliser les méthodes ci-dessus, mettez un \
(barre oblique inversée) avant l'espace, par ex. cd ~/Library/Application\ Support
.
Le chemin d'accès est-il sensible ou non à la casse ? Je peux accéder à Library par cd ~/library, mais la méthode de tabulation ne fonctionnera pas si je me trompe de casse.
@colinfang OS X est insensible à la casse, mais respecte la casse. Le shell bash doit être un peu plus discriminant quand il s'agit d'autocomplétion.
La question centrale ici est de savoir comment le shell ( bash ) fait la citation et comment cela affecte l'expansion du tilde et la division en "mots" (arguments pour le programme en cours d'exécution).
bash ne traite le tilde de tête de manière spéciale que s'il n'est pas cité. En outre, la barre oblique suivante ne doit pas non plus être citée.
En même temps, bash analyse les lignes de commande en "mots" en se basant sur les espaces non quotés. Le site cd
requiert généralement un seul argument (le répertoire de destination). Une ligne de commande comme cd foo bar
signifie courir cd
avec deux arguments : foo
y bar
. Si vous ne voulez envoyer qu'un seul foo bar
vous devez alors citer l'espace :
(par exemple) cd foo\ bar
(voir l'exemple de citation ci-dessous).
Dans votre situation particulière, vous devez laisser le tilde et la barre oblique suivante non cités tout en citant l'espace dans le nom du répertoire. Votre cd "~/Library/Application Support/"
finit par citer trop de choses (le tilde et son slash), alors que votre cd ~/Library/Application Support/
trial cite trop peu (il omet de citer l'espace dans le nom du répertoire).
La solution la plus courante consiste à utiliser l'échappement à un seul caractère pour ne citer que l'espace :
cd ~/Library/Application\ Support
Vous pouvez également utiliser des guillemets simples ou doubles autour de l'espace seul ou de l'espace et d'autres éléments de l'argument (mais pas autour de la ligne de commande). ~/
!) :
cd ~/Library/Application' 'Support
cd ~/Library/Application" "Support
cd ~/Library/App'lication 'Support
cd ~/Library/Application" Supp"ort
cd ~/'Library/Application 'Support
cd ~/"Library/Application "Support
Ces types de citations ont des significations différentes, mais elles sont identiques dans ces exemples. Les guillemets simples protègent les chaînes de caractères littérales, tandis que les guillemets doubles permettent diverses expansions et substitutions dans la région citée.
Souvent, vous pouvez laisser le shell faire le travail à votre place.
Globbing (caractères génériques) :
cd ~/L*/Ap*
Vous pouvez utiliser shopt -s nocaseglob
pour rendre la globalisation insensible à la casse :
cd ~/l*/ap*
Achèvement :
Presser Tab après avoir saisi cd ~/L
va probablement l'étendre à cd ~/Library/
.
Presser Tab à nouveau après avoir saisi Ap
(vous avez maintenant cd ~/Library/Ap
) va probablement l'étendre à cd ~/Library/Application\ Support/
(l'interpréteur de commandes insère automatiquement le backslash d'échappement).
Vous pouvez utiliser bind 'set completion-ignore-case on'
pour rendre l'achèvement insensible à la casse :
cd ~/l
Tab cd ~/Library/
; ap
Tab cd ~/Library/Application\ Support/
Bonne réponse @Chris. Comment avez-vous fait pour que les caractères de tabulation ressemblent à des touches ?
@RobZ : C'est le balise HTML (une parmi plusieurs Balises HTML prises en charge dans SE markdown ).
Lorsque vous double-cliquez sur un chemin, vous arrêtez l'expansion du tilde. Il y a donc plusieurs façons de le faire :
cd ~/"My Code"
cd ~/'My Code'
Le tilde n'est pas cité ici, donc l'expansion du tilde sera toujours exécutée.
cd "$HOME/My Code"
Vous pouvez développer les variables d'environnement à l'intérieur de chaînes de caractères entre guillemets ; c'est en fait ce que fait l'expansion du tilde
cd ~/My\ Code
Vous pouvez également échapper aux caractères spéciaux (comme l'espace) avec une barre oblique inverse.
LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.
0 votes
Utilisez
\
-> pour le nom du répertoire :test one
-> vous devriez écrirecd test\ one