2009-07-29 5 views
1
DISTRIB_ID=Ubuntu 
DISTRIB_RELEASE=8.10 
DISTRIB_CODENAME=intrepid 
DISTRIB_DESCRIPTION="Ubuntu 8.10" 

Ceci est la version du serveur.Problèmes de complétion TAB et mc

Quand je le client ssh, je rencontre les problèmes suivants:

Problème 1

complétion se comporte bizarre au point d'être inutilisable:

> cd ~/<press TAB> 
-sh: <(compgen -d -- '/home/dmitriid/'): No such file or directory 

> vi ~/.<press TAB> 
<(compgen -d -- '/home/dmitriid/.'): No such file or directory 
-sh: <(eval compgen -f -X '*[email protected](o|so|so.!(conf)|a|rpm|gif|GIF|jp?(e)g| 
JP?(E)G|mp3|MP3|mp?(e)g|MPG|avi|AVI|asf|ASF|ogg|OGG|class|CLASS)' -- 
$(quote_readline $cur)): No such file or directory 

> nano ~/.<press TAB> 
./    .bash_logout .mc/   .viminfo 
../    .bashrc   .mysql_history 
.aptitude/  .erlang.cookie .profile   
.bash_history .gitconfig  .ssh/ 

est-il un moyen réparer ça?

Problème 2

J'utilise mc tout à fait beaucoup. Je fais souvent un Ctrl + O pour masquer les panneaux et travailler dans le shell. Dans mon cas:

  1. Ctrl + O cache panneaux
  2. Tous les panneaux keypress apporte en arrière

est-il un moyen de résoudre ce problème aussi bien?

Merci!

+0

Ce n'est pas vraiment une question pour stackoverflow. Vous devriez essayer le forum Ubuntu. – anderstornvig

+0

Je l'ai fait. Il est silencieux :) StackOveflow est généralement beaucoup plus utile que n'importe quel autre forum là-bas :) – Mamut

+0

Les shells Unix sont des compléments aux éditeurs de texte et sont ensemble l'équivalent d'un IDE. Je ne vois pas beaucoup d'objections aux questions de configuration de Visual Studio ou d'Eclipse. – guns

Répondre

4

Ok. Il s'avère que la solution était stupide et simple. La clé était - pas de shell interactif dans mc.

La réponse se trouve ici: http://www.ibiblio.org/mc/FAQ

6,6 Lorsque j'utilise Ctrl-O Je ne suis pas un sous-shell. Comment puis-je réparer ça? Seules les commandes bash, tcsh et zsh peuvent être utilisées comme sous-couche. Utilisez l'un de ces shells comme shell par défaut, et il sera utilisé comme sous-shell dans GNU Midnight Commander.

donc j'ai décidé de changer le shell:

> which bash 
/bin/bash 
> sudo chsh -s /bin/bash my_user_name 
> grep ^my_user_name /etc/password 
my_user_name:x:1002:1002::/home/my_user_name:/bin/bash 

Note/bin/bash à la fin du fichier passwd. Cela signifie que le shell est maintenant changé.

Après que je me suis déconnecté, puis connecté - voila, tout fonctionne!

+0

Merci! J'ai résolu le même problème pour moi - mon shell avait par défaut/bin/sh –

1

Je vais essayer de réinstaller tous les paquets bash, en particulier bash-achèvement: apt-get install --reinstall bash-completion, car il semble que certaines parties de bash est vissé. Btw, je suppose que cela devrait aller à serverfault.com.

+0

Je vais essayer ça. Merci pour le lien vers serverfault – Mamut

1

Lorsque j'ai tapé ce qui suit pour passer à la racine, il semblait que le problème des autorisations était résolu. On dirait que compgen n'est pas capable de lire les répertoires dont il a besoin quand je suis connecté en tant qu'utilisateur régulier.

sudo su - 
0

"6.6 Lorsque j'utilise Ctrl-O, je n'ai pas de sous-shell.

Pour utiliser Ctr + o vous devriez avoir SHELL =/bin/bash et non SHELL =/bin/sh Add to.bashrc export SHELL =/bin/bash

Questions connexes