Je voudrais copier le répertoire courant dans le presse - papiers, quelque chose comme: pwd | pbcopy
. Cependant, pwd
n'échappe pas à l'espace, donc quelque chose dans "Application Support", par exemple, ne se copie pas correctement. Je ne me souviens pas que cela ait toujours été le cas, donc j'aurais pu tromper quelque chose. Utilisation d'iTerm2.
Y a-t-il un réglage bash pour tout échapper? des problèmes de recherche, trop de questions / sujets sur Spaces.app ou esc.
Courant:
$ pwd
/Library/Application Support/Google Earth/
Préféré:
$ pwd
/Library/Application\ Support/Google\ Earth/
Articles déjà vus: Copier le chemin du répertoire actuel dans le presse-papiers et comment cd dans un répertoire avec un nom contenant des espaces dans bash? , qui n'abordent pas cette question. J'aurais fait un commentaire dans le premier, mais je n'ai pas les privilèges.
pwd | pbcopy
fonctionne bien pour moi dans le terminal. Finder / Edit / Show Clipboard confirme que tout va bien.pwd | pbcopy
fonctionne bien dans iTerm2.Réponses:
Cette commande échappera correctement aux espaces:
Vous pouvez l'aliaser en utilisant quelque chose avec l'histoire comme
cwd
si cela ne vous dérange pas de redéfinir un cwd différentAbandonnez le tuyau à pbcopy si vous voulez qu'il fonctionne plus comme pwd et imprimez simplement le chemin d'échappement.
la source
Mais je ne suis pas sûr que cela résoudra finalement votre problème. pbcopy copie exactement ce qu'il reçoit sur stdin.
la source
Il n'y a aucun moyen intégré de créer
pwd
des chemins de fichier d'échappement en sortie, car cela n'est généralement pas utile.Il n'est pas logique d' ajouter
pwd
oupbcopy
d'ajouter des barres obliques inverses à ce qui est copié. Si vous vouliez copier le chemin d'accès dans un fichier texte ou une publication Web, vous ne voudriez pas qu'une barre oblique inverse y soit insérée.Ce que vous voulez probablement faire, c'est créer un alias séparé, comme
qwd
pour imprimer la forme entre guillemets du répertoire courant, ou simplement échapper la sortie depbpaste
, ce qui est aussi simple que de le mettre entre guillemets:Notez que ce ne sont pas seulement les espaces qui doivent être échappés. Les barres obliques avant et arrière, l'étoile, le point d'interrogation, l'esperluette, le point-virgule et d'autres caractères doivent également s'échapper. Le plus sûr est simplement d'utiliser des guillemets doubles comme dans l'exemple, qui fonctionnera même si le chemin contient des guillemets doubles.
Si vous voulez être pervers à ce sujet, vous pouvez demander à AppleScript de citer le répertoire actuel pour vous:
Sinon, je suis principalement d'accord avec Glenn, sauf que, comme ci-dessus, je voudrais alias le formulaire cité pour
qwd
ne pas interférer avec la normalepwd
:la source