Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Nefunguje doplňování příkazů tabem v konsoli  (Přečteno 2592 krát)

sanchez

  • Návštěvník
  • Příspěvků: 89
Nefunguje doplňování příkazů tabem v konsoli
« kdy: 13 Srpna 2009, 20:34:18 »
Zdravím,
včera jsem byl nucen smazat domovský adresář za účelem smazání konfiguračních souborů. Od té doby mi nejde doplňovat příkazy tabem, jak už název napovídá:) Nevíte co s tím? Počítám, že to bude nějaká banalita, ale amatér, je amatér:D

nettezzaumana

  • Host
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #1 kdy: 13 Srpna 2009, 20:42:32 »
patrne jsi si smazal .bashrc, nejsem si jist jestli to lze takto udelat, ale zkus vytvorit noveho usera (useradd -d /tmp/blah -m blah) a zkopiruj soubory zacinajici "." z /tmp/blah do tveho adresare a zmen jim majitele aby patrily tvemu normalnimu userovi

Milhouse

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 5726

N. Á. V. O. D. Y.
 "...naše práce není vidět, ale je důležitá!"

Uran

  • Aktivní člen
  • *
  • Příspěvků: 341
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #3 kdy: 14 Srpna 2009, 08:28:44 »
http://wiki.ubuntu.cz/Lehk%C3%BD%20%C3%BAvod%20do%20taj%C5%AF%20p%C5%99%C3%ADkazov%C3%A9%20%C5%99%C3%A1dky#Bash_completion

Je to v souboru /.bashrc

no postupoval jsem podle navodu na wiki a dosahl jsem castecneho uspechu. Pomoci "gksudo gedit /etc/bash.bashrc" jsem odkomentoval prislusne radky
Kód: [Vybrat]
# enable bash completion in interactive shells
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

dopnovani funguje pod normalnim uzivatelem i se sudo. Problem nastava kdyz pouziji gksudo napr $gksudo ge mi gedit nedoplni (nenabidne ani jine moznosti. kdyz zadam "$gksudo gedit " s mezerou na konci po stisknuti tab-u mi nabidne soubory a slozky.
Pripadne mi ze gksudo nenabizi po stisku tab-u aplikace ale jen cesty ke slozkam a soubory.

Je to nejaka ficura nebo bug?
"Pouze text v MS Wordu je opravdu čistý, příteli."

Uran

  • Aktivní člen
  • *
  • Příspěvků: 341
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #4 kdy: 14 Srpna 2009, 08:54:57 »
Jeste me napadlo ze pokud se gksudo spousti s koniguracnimi soubory roota je potreba zmenit /root/.bashrc

Tam me vsak zaujala cast (prvni 3 radky):

Kód: [Vybrat]
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
#if [ -f /etc/bash_completion ]; then
#    . /etc/bash_completion
#fi

Pridanim nasledujiciho textu na konec souboru /etc/profile vsak po prihlaseni do grafickeho rezimu okamzite odhlaseni (pres terminal se prihlasit jako bezny user jde)

Kód: [Vybrat]
# enable bash completion in interactive shells
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi
"Pouze text v MS Wordu je opravdu čistý, příteli."

Milhouse

  • Moderátor
  • Závislák
  • ***
  • Příspěvků: 5726
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #5 kdy: 14 Srpna 2009, 09:06:48 »
Ano "/root/.bashrc" a to platí i pro "sudo -i".

N. Á. V. O. D. Y.
 "...naše práce není vidět, ale je důležitá!"

Uran

  • Aktivní člen
  • *
  • Příspěvků: 341
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #6 kdy: 14 Srpna 2009, 09:18:51 »
Ale proc je pak napsano ze to staci povolit jen v /etc/bash.bashrc a /etc/profile?

Jinak tohle je vypys te chyby co to hodi kdyz se to da do /etc/profile:
Kód: [Vybrat]
ged@ged-laptop:~$ cat .xsession-errors.old
/etc/gdm/Xsession: Beginning session setup...
/etc/bash_completion: 32: [[: not found
/etc/bash_completion: 38: [[: not found
/etc/bash_completion: 50: Bad substitution
"Pouze text v MS Wordu je opravdu čistý, příteli."

Uran

  • Aktivní člen
  • *
  • Příspěvků: 341
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #7 kdy: 14 Srpna 2009, 09:29:01 »
Ano "/root/.bashrc" a to platí i pro "sudo -i".

Sorry jestli jsem za blbce, ale tento postup nefunguje:

Kód: [Vybrat]
ged@ged-laptop:~$ cat /root/.bashrc
cat: /root/.bashrc: Permission denied
ged@ged-laptop:~$ sudo cat /root/.bashrc
[sudo] password for ged:
.
.
.
.
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

Kód: [Vybrat]
ged@ged-laptop:~$ sudo cat /etc/profile
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi

if [ "$PS1" ]; then
  if [ "$BASH" ]; then
    PS1='\u@\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
. /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

umask 022

Kód: [Vybrat]
ged@ged-laptop:~$ sudo cat /etc/bash.bashrc
.
.
# enable bash completion in interactive shells
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

Tak uz vazne nevim kam tu sekci dat aby gksudo doplnovalo nazvy programu :(
"Pouze text v MS Wordu je opravdu čistý, příteli."

Uran

  • Aktivní člen
  • *
  • Příspěvků: 341
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #8 kdy: 14 Srpna 2009, 09:43:29 »
Funguje nekomu automaticke doplnovani programu spolecne s gksudo a byl by mi ochoten poslat konfiguracni soubory? Pokusil bych se to podle toho zpravit.
"Pouze text v MS Wordu je opravdu čistý, příteli."

sanchez

  • Návštěvník
  • Příspěvků: 89
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #9 kdy: 14 Srpna 2009, 10:58:47 »
tak ja jsem postupoval podle batz batz maru a funguje to. Dik. Jenom bych dodal, že je nutné příkaz provézt pomocí sudo. Takový kosmetický detail:D

Uran

  • Aktivní člen
  • *
  • Příspěvků: 341
Re: Nefunguje doplňování příkazů tabem v konsoli
« Odpověď #10 kdy: 14 Srpna 2009, 11:19:09 »
a funguje ti i gksudo?
"Pouze text v MS Wordu je opravdu čistý, příteli."

 

Provoz zaštiťuje spolek OpenAlt.