J'ai ceci sur la ligne de commande:
ln -sf $PWD/wine-
et puis je frappe Tabpour compléter le nom de fichier. Dans les versions antérieures d'Ubuntu, cela complétait parfaitement le wine-
nom de fichier (et l'effet secondaire $PWD
serait étendu à ce moment-là). Mais maintenant, il se tourne vers
ln -sf \$PWD/wine-
ce qui n'est pas du tout ce que je voulais dire et ne complète rien car le fichier ne commence pas littéralement par $
.
Comment puis-je obtenir l'achèvement du comportement moins brisé?
set
me dit que ce sont mes paramètres actuels:
BASHOPTS=checkwinsize:cmdhist:expand_aliases:extquote:force_fignore:hostcomplete:interactive_comments:progcomp:promptvars:sourcepath
SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
command-line
bash
retour
la source
la source
Réponses:
J'ai trouvé que les versions de bash> = 4.2.29 ont un nouveau
direxpand
paramètre shopt. (man docs/bash.1
Vérifiez si vous consultez une nouvelle bash ou consultez bash.1 à partir de la ligne 8951 )Si on utilise Quantal Quetzal 12.10 ou s’empare d’une autre bash (ou vérifie et construit), alors:
Me donne le comportement que je veux, dont j'ai besoin et que j'aime.
Solution: En attendant, Ctrl+ Alt+ au Elieu de Tabfait ce que je veux aussi. Mais c'est maladroit.
BTW, Il existe plusieurs threads appelés "question d'expansion de variable bash tab?" dans gnu.bash.bug . En les lisant, j'ai trouvé l'info ici.
la source
4.4.19
sur Ubuntu 18.04 et cela fonctionne. Je ne sais pas quand cela a changé.shopt -u progcomp
résout le problème sans étendre la variable à sa valeurrechercher
_filedir()
dans le script bash_completion de niveau supérieur et modifier la ligneà
la source
compopt: noquote: invalid option name
Pour ceux (comme moi) avec 12.04 peuvent utiliser ~ + au lieu de $ PWD ...
par exemple :
la source
Même avec la mise à jour bash, je trouvais que je m'échappais
$
toujours.bash-completion (1:2.1-3.fc20)
paquet/etc/bashrc
de source~/.bashrc
semblait le régler.Je pense que je vais maintenant manquer certaines fonctionnalités auxquelles je suis normalement habitué mais que je n’en ai pas encore remarquées.
Alternative (au moins pour Fedora 26), ajoutez
export BASH_COMPLETION_VERSINFO=0
avant d’acheter/etc/bashrc
. Cela fait croire au script problématique que son origine a déjà été obtenue.la source
Cela a résolu le problème pour moi, mais aussi de nombreuses options de complétion "intelligentes" qui me gênent en ne complétant pas les fichiers que je connais sont là car la bêtise pense que je ne les veux pas comme arguments d'un particulier. commander. ARRRGH
la source
J'ai rencontré le même problème avec Bash dans Cygwin. J'ai résolu mon problème en définissant l'option suivante.
http://www.gnu.org/software/bash/manual/html_node/The-Shopt-Builtin.html
la source
Désactiver l'option shell 'complete_fullquote' fait le travail:
la source