Obtenir des instructions d'achèvement de l'onglet plus utiles dans bash?

Disons que j'ai un directory avec quelques files comme ça:

$ ls file1 file2 file3 

Et je veux faire une fin de tabulation dans bash:

 $ cat file<tab> file1 file2 file3 

Je me souviens avoir vu quelqu'un accomplir l'achèvement de l'onglet et la shell a attelé les parties suivantes, donc dans ce cas, il serait audacieux les 1 , 2 et 3 du nom de file de sorte qu'il ressemble à ceci: file 1 file 2 file 3

qui vous dira ce que vous devriez entrer dans le prochain.

Je pense que c'était une fonctionnalité de zsh , mais y a-t-il un moyen de l'get en bash ?

3 Solutions collect form web for “Obtenir des instructions d'achèvement de l'onglet plus utiles dans bash?”

Je ne connais pas de fonctionnalités directement scopes, mais il existe un moyen de pirater cela en bash . L'achèvement programmable vous permet de spécifier ce que vous souhaitez voir lorsque vous appuyez sur cette touche d'onglet en fonction du programme d'appel, ce qui permet (comme exemple populaire) ssh [onglet] de montrer les options de ~/.ssh/known_hosts automatique de ~/.ssh/known_hosts .

Voici quelques ressources utiles:

Intro, source et RPM

L'user a consortingbué aux "complétions"

Plus d'exemples

Et plus d'exemples

Bien sûr, pour dupliquer les fonctionnalités que vous avez spécifiées ci-dessus, vous devrez baisser et assumr avec l'aspect programmable de l'achèvement et écrire vos propres fonctions. Ubuntu embarque son propre set de complétions apscopes par les users , ce qui constitue un bon sharepoint départ.

Dans les dissortingbutions basées sur Red Hat, il y a un package bash-completion. Ce package remplit le directory /etc/bash_completion.d/ avec un comportement d'achèvement spécifique pour plusieurs programmes. Je l'utilise sous Fedora, Red Hat et CentOS.

 yum install bash-completion 

J'utilise tcsh raison d'une caractéristique similaire.

Voici mon file /etc/csh.cshrc:

 if ($?tcsh && $?prompt) then bindkey "\e[1~" beginning-of-line # Home bindkey "\e[7~" beginning-of-line # Home rxvt bindkey "\e[2~" overwrite-mode # Ins bindkey "\e[3~" delete-char # Delete bindkey "\e[4~" end-of-line # End bindkey "\e[8~" end-of-line # End rxvt bindkey -k up history-search-backward bindkey -k down history-search-forward set filec set prompt="[%B%m%b:%~] %n%# " set complete = enhance # important line set autolist # important line too alias ls 'ls -hA --color' alias ll 'ls -l' endif 
  • Modification du shell (à l'aide de chsh) via la command line dans un script
  • Exécution de l'alias de .bash_file via SSH
  • Faites ls imprimer tout sur une seule ligne (comme dans le terminal)
  • exécutez la command shell comme autre user appelé par PHP
  • Custom Openssh Shell
  • Service Systemd: Impossible d'émettre un appel de méthode: un service d'unité a échoué
  • Démarrer avec Linux dans un Script Shell?
  • Comment puis-je afficher l'adresse IP d'une interface?
  • Chandler Start-Up Script / bin / bash vs / bin / sh
  • bash: convertir la date de l'horodatage Unix change l'horodatage
  • Comment afficher le contenu du shell également dans une autre window de terminal indépendante?
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.