# [TIP] Bash-completion

## paolo

Koma mi ha fatto venire l'idea del tip, di metterne uno ogni tanto  :Smile: 

Conoscete la bash-completion?

Il sito web è questo.

In pratica è uno script (in bash!) che potenzia la completion che già ha la bash e cioè quella feature che vi permette di "completare" la digitazione di un nome file semplicemente premendo il tasto TAB.

Con questo script avrete la completion anche con il comando "emerge" (vi completerà la sezione e il nome pacchetto, con i comandi modprobe, e tanti altri!

E' di una utilità unica.

Io la trovo indispensabile, soprattutto perchè uso quasi esclusivamente la console. Ma... chi da X non apre una, due, tre shell?  :Smile: 

fate 

```
emerge bash-completion
```

modificate quello che c'è da modificare (i modi per farla funzionare sono diversi) e divertitevi a sfruttare la potenza di questo tool.

ByEZz,

Paolo

----------

## fedeliallalinea

E la prima cosa che scarico quando ho finito di fare emerge system. E' l'utility che uso di piu' in assoluto.

----------

## MyZelF

eccezionale... ottimo tip!  :Smile: 

----------

## bubble27

ecco a cosa si riferisce l'ultima riga del file .bashrc .....  :Laughing: 

##uncomment the following to activate bash-completion:

#[ -f /etc/profile.d/bash-completion ] && source /etc/profile.d/bash-completion

----------

## bsolar

Non sarebbe più conveniente mettere tutti i TIP in una thread unica che fa da elenco con un link ad un'altra (o altre) thread per la discussione?

Lascio la palla a cerri...  :Cool: 

----------

## cerri

Giuro, ci avevo pensato ma mi sono detto...

 *mente di cerri wrote:*   

> naaaaaaa sarebbe bello ma se apro un altro sticky qui mi cacciano....

 

 :Cool: 

----------

## xlyz

 *cerri wrote:*   

> Giuro, ci avevo pensato ma mi sono detto...
> 
>  *mente di cerri wrote:*   naaaaaaa sarebbe bello ma se apro un altro sticky qui mi cacciano.... 
> 
> 

 

anche perchè non vorrei dover scrollare tutta la pagina per arrivare ai post non sticky   :Twisted Evil: 

----------

## shev

Ottimo il tips di Paolo.

Ricordo che sul sito gentoo.it raccogliamo nella sezione Tips&Tricks cose del genere, quindi oltre che a mettere giustamente il tutto in un topic apposito in questo forum, se qualche volenteroso volesse scrivere brevi howto anche per il sito sarebbe una gran cosa (io ovviamente sono disponibile, però mi pare giusto che ognuno metta a suo nome i suoi tips & tricks).

----------

## Rotterdam

ma una volta emergiato e decomentata la riga nel .bashrc cosa bisogna fare?

----------

## micron

Mitico!! corro a provarlo, grande tip!!  :Cool: 

----------

## possi

 *Rotterdam wrote:*   

> ma una volta emergiato e decomentata la riga nel .bashrc cosa bisogna fare?

 

premere il TAB   :Wink: 

----------

## fedeliallalinea

 *possi wrote:*   

>  *Rotterdam wrote:*   ma una volta emergiato e decomentata la riga nel .bashrc cosa bisogna fare? 
> 
> premere il TAB  

 

Hai visto la data del messaggio di Rotterdam  :Very Happy: 

----------

## possi

 *fedeliallalinea wrote:*   

>  *possi wrote:*    *Rotterdam wrote:*   ma una volta emergiato e decomentata la riga nel .bashrc cosa bisogna fare? 
> 
> premere il TAB   
> 
> Hai visto la data del messaggio di Rotterdam 

 

hemmm...   :Very Happy: 

----------

## mambro

Meglio tardi che mai   :Laughing: 

Cmq a me funziona da utente ma da root non va... ho copiato il .bashrc che ho nella mia home in /root/.bashrc ma pare che root nn carichi  quel file   :Confused:   Cosa sbaglio?

----------

## gutter

 *mambro wrote:*   

> Meglio tardi che mai  
> 
> Cmq a me funziona da utente ma da root non va... ho copiato il .bashrc che ho nella mia home in /root/.bashrc ma pare che root nn carichi  quel file    Cosa sbaglio?

 

Copia anche il /etc/skel/.bash_profile in /root e riprova vedrai che funge.

----------

## n3m0

E' del file /etc/inputrc che mi dite?  :Smile: 

Non so come sia fatto quello di default di gentoo, perche' la prima cosa che ho fatto quandoi ho installato gentoo è mettere la MIA copia di inputrc, gentilmente concesso da SuSE (me lo porto dietro dai tempi in cui provai SuSE 8 ).

Con il seguente inputrc, aggiungere nuove funzionalita' alla bash, come la comodissima history prefix based (ma anche altre, a voi il piacere di scropirle)

Es: 

```

# mpla <PG_UP>

# mplayer pippo.avi <PG_UP>

# mplayer pluto.avi

```

e così via...

Se questo inputrc risulta essere un tip (nel senso che quello di default di Gentoo non permette queste operazioni) allora ditemelo che lo metto in un topic a parte.

Ecco il file.

```
################################################################################

## /etc/inputrc

##

## Attempt to put different TERMs together in one readline init file.

## Copyright (c) 1997,2000 SuSE Linux AG, Nuernberg, Germany.

##

## Author: Werner Fink,  <werner@suse.de>

##

################################################################################

#

# Eight bit compatible: Umlaute

#

set meta-flag on

set output-meta on

set convert-meta off

set term xy

#

# VI line editing

#

$if mode=vi

set editing-mode vi

set keymap vi

$endif

#

# Common standard keypad and cursor

#

"\e[1~": beginning-of-line

"\e[2~": yank

"\e[3~": delete-char

"\e[4~": end-of-line

"\e[5~": history-search-backward

"\e[6~": history-search-forward

$if term=xterm

"\e[2;5~": yank

"\e[3;5~": delete-char

"\e[5;5~": history-search-backward

"\e[6;5~": history-search-forward

$endif

"\e[C":  forward-char

"\e[D":  backward-char

"\e[A":  previous-history

"\e[B":  next-history

$if term=xterm

"\e[E":  re-read-init-file

$else

"\e[G":  re-read-init-file

$endif

#

# Avoid network problems

#   ... \177 (ASCII-DEL) and \010 (ASCII-BS)

#       do `backward-delete-char'

# Note: `delete-char' is maped to \033[3~

#       Therefore xterm's responce on pressing

#       key Delete or KP-Delete should be

#       \033[3~ ... NOT \177

#

"\C-?":  backward-delete-char

"\C-H":  backward-delete-char

#

# Home and End

#

$if term=xterm

#

# Normal keypad and cursor of xterm

#

"\e[1~":   history-search-backward

"\e[4~":   set-mark

"\e[H":      beginning-of-line

"\e[F":      end-of-line

# Home and End of application keypad and cursor of xterm

"\eOH":      beginning-of-line

"\eOF":      end-of-line

"\eO5H":   beginning-of-line

"\eO5F":   end-of-line

$else

$if term=kvt

"\e[1~":   history-search-backward

"\e[4~":   set-mark

"\eOH":      beginning-of-line

"\eOF":      end-of-line

$endif

#

# TERM=linux or console or gnome

#

"\e[1~":   beginning-of-line

"\e[4~":   end-of-line

$endif

#

# Application keypad and cursor of xterm

#

$if term=xterm

"\eOD":         backward-char

"\eOC":         forward-char

"\eOA":         previous-history

"\eOB":         next-history

"\eOE":         re-read-init-file

# DEC keyboard KP_F1 - KP_F4 or

# XTerm of XFree86 in VT220 mode F1 - F4

"\eOP":      prefix-meta

"\eOQ":      undo

"\eOR":      ""  

"\eOS":      kill-line

$endif

$if term=gnome

# or gnome terminal F1 - F4

"\eOP":      prefix-meta

"\eOQ":      undo

"\eOR":      ""

"\eOS":      kill-line

$endif

#

# Function keys F1 - F12

#

$if term=linux

#

# On console the first five function keys

#

"\e[[A":   prefix-meta

"\e[[B":   undo

"\e[[C":   ""

"\e[[D":   kill-line

"\e[[E":   ""

$else

#

# The first five standard function keys

#

"\e[11~":   prefix-meta

"\e[12~":   undo

"\e[13~":   ""

"\e[14~":   kill-line

"\e[15~":   ""

$endif

"\e[17~":   ""

"\e[18~":   ""

"\e[19~":   ""

"\e[20~":   ""

"\e[21~":   ""

# Note: F11, F12 are identical with Shift_F1 and Shift_F2

"\e[23~":   ""

"\e[24~":   ""

#

# Shift Function keys F1  - F12

#      identical with F11 - F22

#

#"\e[23~":   ""

#"\e[24~":   ""

"\e[25~":   ""

"\e[26~":   ""

# DEC keyboard: F15=\e[28~ is Help

"\e[28~":   ""

# DEC keyboard: F16=\e[29~ is Menu

"\e[29~":   ""

"\e[31~":   ""

"\e[32~":   ""

"\e[33~":   ""

"\e[34~":   ""

$if term=xterm

# Not common

"\e[35~":   ""

"\e[36~":   ""

$endif

#

$if term=xterm

#

# Application keypad and cursor of xterm

# with NumLock ON

#

# Operators

"\eOo":      "/"

"\eOj":      "*"

"\eOm":      "-"

"\eOk":      "+"

"\eOl":      ","

"\eOM":      accept-line

"\eOn":      "."

# Numbers

"\eOp":      "0"

"\eOq":      "1"

"\eOr":      "2"

"\eOs":      "3"

"\eOt":      "4"

"\eOu":      "5"

"\eOv":      "6"

"\eOw":      "7"

"\eOx":      "8"

"\eOy":      "9"

$endif

#

#  EMACS line editing

#

$if mode=emacs

#

# ... xterm application cursor

#

$if term=xterm

"\e\eOD":   backward-word

"\e\eOC":   forward-word

"\e\eOA":   up-history

"\e\eOB":   down-history

"\C-\eOD":   backward-char

"\C-\eOC":   forward-char

"\C-\eOA":   up-history

"\C-\eOB":   down-history

$endif

#

# Standard cursor

#

"\e\e[D":   backward-word

"\e\e[C":   forward-word

"\e\e[A": up-history

"\e\e[B": down-history

"\C-\e[D": backward-char

"\C-\e[C": forward-char

"\C-\e[A":   up-history

"\C-\e[B":   down-history

$endif

#

# end

#

```

----------

## mambro

 *gutter wrote:*   

>  *mambro wrote:*   Meglio tardi che mai  
> 
> Cmq a me funziona da utente ma da root non va... ho copiato il .bashrc che ho nella mia home in /root/.bashrc ma pare che root nn carichi  quel file    Cosa sbaglio? 
> 
> Copia anche il /etc/skel/.bash_profile in /root e riprova vedrai che funge.

 

Ora va, grazie mille   :Wink: 

----------

## gutter

 *mambro wrote:*   

> 
> 
> Ora va, grazie mille  

 

Di niente   :Wink: 

----------

## xoen

 *paolo wrote:*   

> Con questo script avrete la completion anche con il comando "emerge" (vi completerà la sezione e il nome pacchetto, con i comandi modprobe, e tanti altri!

 

Deng Iu...

----------

## SilverXXX

fantastico   :Shocked:  ! Cosa mi ero perso, finora.

----------

## lavish

wowowowow! MITTICO! E io che nn ne sapevo ancora nulla...   :Exclamation: 

----------

## Giepi

non riesco attivarlo su root.

non esiste /root/.bashrc e /etc/skel è vuota

se in /root/bashrc metto solo la stringa che da sul sito o quella che me la fa girare nel mio utente "normale" non va the same

----------

## fedeliallalinea

Io metto la riga in /etc/profile

----------

## gutter

 *fedeliallalinea wrote:*   

> Io metto la riga in /etc/profile

 

@Giepi: Almeno così la setti pet tutti e ti togli il pensiero   :Wink: 

----------

## stefanonafets

 *Quote:*   

> wowowowow! MITTICO! E io che nn ne sapevo ancora nulla...

 

Su non-mi-ricordo-quale guida c'era scritta una roba del tipo "Bash ha un casino di parti oscure, e la gente tende ad usarle tutte..."

(scusate per la simil-citazione abbastanza imprecisa, spero che qualcuno possa correggere e/o migliorare...)

----------

## federico

Ora lo provo, sinceramente ho sempre attivato in bashrc questo "completazionamento" ma non ne avevo mai capito il vero senso...

----------

## nomadsoul

ottima cosa. un unica domanda:

finito l'emerge dice, tra le altre cose:

```

 * Additional complete functions can be enabled by symlinking them from

 * /usr/share/bash-completion to /etc/bash_completion.d

```

qualcuno sa quali sono queste additional complete function?

----------

## gutter

Si tratta delle funzioni che forniscono il completamento  :Smile: 

Prova a vedere i file contenuti nella directory indicata, così ti fai un'idea.

----------

## f0llia

Ho provato a emergere la bash-completion, ho aggiunto la riga  

```

[ -f /etc/profile.d/bash-completion ] && . /etc/profile.d/bash-completion

```

in  ~/.bashrc e anche in /etc/profile

ho crato il symlink

```

ln -s /usr/share/bash-completion to /etc/bash_completion.d

```

ma l'autocompletamento non mi funge.. che sbaglio ?

----------

## .:deadhead:.

 *f0llia wrote:*   

> Ho provato a emergere la bash-completion, ho aggiunto la riga  
> 
> ```
> 
> [ -f /etc/profile.d/bash-completion ] && . /etc/profile.d/bash-completion
> ...

 perchè non devi creare il link tra queste 2 cartelle  :Smile:  bensì devi linkare dentro 

```
/etc/bash_completion.d
```

 uno o più files presenti in 

```
/usr/share/bash-completion
```

, in modo da attivar uno o più "moduli" per l'autocompletamento. di default c'è linkato solo il modulo gentoo, ma come potrai constatare ce ne sono un sacco di altri ... have a lot of fun [(c) SuSE  :Laughing:  ]

----------

## unz

riesumo sto thread ... a me funzia tutto ... ma mi ricordavo che c'era l'auto completamento anche con gli ebuilds ... o sbaglio? c'ho nel buffer dele cervello emerge nv+TAB -> emerge nvidia- ... me lo sono sognato?

----------

## SilverXXX

no, non te lo sei sognato  :Very Happy:  c'è, all' inizio della guida è spiegato come farlo.

----------

## fedeliallalinea

 *unz wrote:*   

> riesumo sto thread ... a me funzia tutto ... ma mi ricordavo che c'era l'auto completamento anche con gli ebuilds ... o sbaglio? c'ho nel buffer dele cervello emerge nv+TAB -> emerge nvidia- ... me lo sono sognato?

 

Prova a mettere la categoria esempio

```
emerge media-video/n<TAB>
```

----------

## unz

nada ... non risponde ... va solo il completamento con i file "semplici" ... 

ho l'ultimo bash-completion-20050121-r1 ... hanno cambiato qualcosa, qualche link?

EDIT:

ho riemerso di nuovo ed eliminando un falso link s'è aggiustato tutto  :Smile: 

ps ... miii le prove che ho fatto ... odio i metodi deduttivi!  :Twisted Evil: 

----------

## iDreamer

wow... mi funziona.. è stupendo!!!!!!!!!!!!!!!!!

----------

## fraido

 *paolo wrote:*   

> fate 
> 
> ```
> emerge bash-completion
> ```
> ...

 

Mi permetto di aggiungere, per chi gia' non lo sapesse, che esiste anche il pacchetto bash-completion-config che vi permette di "configurare" (installare| disinstallare| ecc) alcuni tipi di completamento piuttosto di altri.

Quindi fate: 

```
emerge bash-completion-config

bash-completion-config --global --install bash-completion-config

bash-completion-config -h
```

Dai miei lunghi  :Rolling Eyes:  e difficilissimi  :Laughing:   esperimenti ho appurato che permette di gestire in modo facile la creazione|cancellazione dei link presenti in /etc/bash_completion.d/. Quindi non e' nulla di che...pero' io lo trovo comodo, spero possa essere utile anche a voi.

ciao ciao

----------

## fraido

 *unz wrote:*   

> nada ... non risponde ... va solo il completamento con i file "semplici" ... 
> 
> ho l'ultimo bash-completion-20050121-r1 ... hanno cambiato qualcosa, qualche link?
> 
> EDIT:
> ...

 

allora prova a dare i seguenti comandi (supponendo che tu non abbia nulla di installato):

```
emerge -v bash-completion bash-completion-config
```

questo ti dovrebbe installare (ad oggi) tre pacchetti software. Poi fai:

```
cd /etc

mkdir bash_completion.d

bash-completion-config --global --install bash-completion-config

```

Ora e' necessario decommentare la riga: 

```
[ -f /etc/profile.d/bash-completion ] && source /etc/profile.d/bash-completion
```

 presente nel file ~/.bashrc (quindi sloggarsi per poi riloggarsi per rendere la modifica effettiva, aggiornando le variabili d'ambiente)

ed infine con il bash-completion-config tool installi o disinstalli a piacere i tool di completamento che ti interessano; quindi dai comandi tipo:

```
bash-completion-config -g -i gentoo
```

A questo punto dovresti avere a disposizione, ad esempio, il completamento dell'emerge. Se ora provi a dare il comando:

```
bash-completion-config -l all
```

ti fa vedere tutti i completamenti disponibili (non solo quelli installati), cmq. tutto questo lo vedi anche lanciando semplicemente:

```
bash-completion-config -h
```

spero ti sia d'aiuto.

ciao ciao

P.S. la differenza rispetto a prima (ovvero a quando non avevi installato bash-completion-config) e' che adesso non devi piu' metter mano ad alcun link, e' infatti bash-completion-config a farlo per te.

----------

## Truzzone

@fraido

Ho seguito le tue istruzioni, solo che non mi funziona, ho installato il modulo emerge da bash-completion-config, ma se provo con:

```
emerge nv<TAB>
```

non funziona  :Sad: 

Che cosa devo controllare?  :Question: 

Ciao by Truzzone  :Smile: 

PS: Non ho eseguito nessun symlink a 'mano'  :Exclamation: 

----------

## SilverXXX

è necessario anche modifcare il file .bashrc, ci sono un paio di linee da decommentare

----------

## fraido

 *Truzzone wrote:*   

> @fraido
> 
> Ho seguito le tue istruzioni, solo che non mi funziona, ho installato il modulo emerge da bash-completion-config, ma se provo con:
> 
> ```
> ...

 

Ops...come ha gia' scritto correttamente SilverXXX bisogna decommentare la riga: [ -f /etc/profile.d/bash-completion ] && . /etc/profile.d/bash-completion presente nel file .bashrc (oppure seguendo il thread vedrai che alcuni hanno deciso di mettere quella riga in /etc/profile)

...io l'ho omesso perche' era stato scritto gia' prima nel thread...ma la colpa e' mia visto che avevo scritto: supponendo che tu non abbia nulla di installato

mea culpa!  :Crying or Very sad: 

Modifico il precedente post, chiedo scusa dell'imprecisione e via verso ulteriori cagate colossali  :Rolling Eyes:   :Wink: 

----------

## pava_rulez

Grazie di cuore a tutti, questa non la sapevo. La comunità gentoo è proprio 1 miniera di informazioni utili...  :Very Happy: 

----------

## Truzzone

 *fraido wrote:*   

> 
> 
> Ops...come ha gia' scritto correttamente SilverXXX bisogna decommentare la riga: [ -f /etc/profile.d/bash-completion ] && . /etc/profile.d/bash-completion presente nel file .bashrc (oppure seguendo il thread vedrai che alcuni hanno deciso di mettere quella riga in /etc/profile)
> 
> 

 

il .bashrc dovrebbe risiedere nella proria home giusto?

Nella mia non esiste, l'ho trovato in /etc/skel ho decommentato la riga, ma niente allora l'ho copiato nella mia home (root) ma niente  :Sad: 

Devo riavviare qualcosa o il cambiamento è istantaneo?  :Question: 

 *fraido wrote:*   

> 
> 
> ...io l'ho omesso perche' era stato scritto gia' prima nel thread...ma la colpa e' mia visto che avevo scritto: supponendo che tu non abbia nulla di installato
> 
> mea culpa! 
> ...

 

No Problem  :Very Happy: 

Ciao by Truzzone  :Smile: 

----------

## pava_rulez

Devi fare il logout e vedrai che al rientro andrà...

----------

## Truzzone

 *pava_rulez wrote:*   

> Devi fare il logout e vedrai che al rientro andrà...

 

Non basta chiudere il terminale (aterm) e riaprirlo  :Confused: 

Ciao by Truzzone  :Smile: 

PS: Al momento non posso fare il logout  :Rolling Eyes: 

----------

## matttions

 *Truzzone wrote:*   

>  *pava_rulez wrote:*   Devi fare il logout e vedrai che al rientro andrï¿½... 
> 
> Non basta chiudere il terminale (aterm) e riaprirlo 
> 
> Ciao by Truzzone 
> ...

 

Prova 

```
env-update && source /etc/profile
```

 :Very Happy: 

----------

## Truzzone

 *matttions wrote:*   

> 
> 
> Prova 
> 
> ```
> ...

 

Grazie 1000 Funziona  :Very Happy: 

Ciao by Truzzone  :Smile: 

PS: con source /etc/profile mi modifica il nome da bash-2.05 con quello del pc e l'utente, come si fa ad impostare in automatico per ogni nuovo aterm che apro?  :Question: 

----------

## fraido

 *Truzzone wrote:*   

> PS: con source /etc/profile mi modifica il nome da bash-2.05 con quello del pc e l'utente, come si fa ad impostare in automatico per ogni nuovo aterm che apro? 

 

Allora per quanto ne so io il comando che hai dato dovrebbe esclusivamente ricaricare le variabili d'ambiente (ossia va a rileggersi i valori e li aggiorna se nel frattempo li dovessi avere modificati), quindi al sucessivo reboot dovresti averli gia' a posto poiche' per leggerli li va a prendere dal .bashrc (poi a seconda dell'utente, da quanto ho letto in questo thread infatti per root si controlla anche in /etc/skel/)

Comunque uscire dal solo terminale non funziona, poiche' la "sessione utente" l'hai gia' avviata e le variabili restano tali fino a quando ti slogghi. Pertanto o non ti slogghi e dai il comando che ti hanno indicato o ti slogghi e rientri. Io tendenzialmente preferisco la seconda, perche' oramai vado a memoria e non sono quasi mai in x, ma la prima e' molto piu' professionale  :Rolling Eyes:   :Wink:  e comoda per chi e' in x.

ciao ciao

----------

## luna80

...ogni tanto fa bene riesumare qualche 3d...io questa non la sapevo ancora.

utililissimo!!  :Smile: 

----------

## fctk

ho provato tab completion, e funziona, ma a mio parere è troppo lento... dopo aver premuto tab possono trascorrere anche 5 secondi prima che abbia un qualche genere di risposta...

----------

## luna80

mi andava tutto perfettamente, ora non so per quale motivo mi accorgo che per esempio non ho più completion per i file che ho in /usr/local/bin

per esempio in /usr/local/bin ho un mio file che si chiama luna80sBurn

e se dalla shell do i comando

```
$ l
```

e poi tab, tra le varie proposte il mio luna80sBurn non esiste.

qualcuno sa magari dirmi il perchè? non so se mi sono spiaegata bene...

credo che la cosa non funzioni più dopo un qualche etc-update, possibile?

----------

## gutter

Cosa ti da:

```
$ echo $PATH
```

P.S.: So che è così stupido che avrai già controllato ma è l'unica cosa che mi viene in mente per ora  :Wink: 

----------

## Truzzone

 *luna80 wrote:*   

> ....CUT...
> 
> credo che la cosa non funzioni più dopo un qualche etc-update, possibile?

 

Può essere che con l'ultimo baselayout uscito sia stato modificato qualcosa per sbaglio, controlla il file .bashrc nella tua home, deve avere l'ultima riga decommentata.  :Wink: 

Ciao by Truzzone  :Smile: 

----------

## fctk

ho lo stesso problema di luna80... e ho "risolto" mettendo tutto in /usr/bin...

comunque da:

```
thorium fctk # echo $PATH

/sbin:/bin:/usr/sbin:/usr/bin
```

vedo che /usr/local/bin non c'è... eventualmente come posso aggiungerlo?

inoltre:

```
*  sys-apps/baselayout

      Latest version available: 1.11.12-r4

      Latest version installed: 1.11.12-r4
```

----------

## luna80

@gutter: infatti hai fatto bene a ricordarmelo....mi sono dimenticata di controllare: stasera faccio, grazie mille

@Truzzone: infatti pensavo proprio al nuovo baselayout, la riga in bashrc l'ho controllata ed era giustamente ancora scommentata

@fctk: non vorrei dire una cavolata ma penso che dobbiamo dare

```
#export PATH=$PATH:/usr/local/bin
```

forse però è meglio che aspettiamo la conferma di qualcun'altro

----------

## luna80

ho risolto con il comando

```
#export PATH="$PATH:/usr/local/bin"
```

(in ogni caso chi mi ha tolto quel path dalla variabile? una volta funzionava, sarà davvero il nuovo baselayout? e se ne fossero stati tolti altri (di cui adesso non mi sono ancora accorta?))

in ogni caso, come sempre, grazie a tutti

----------

## fctk

mmh... c'è una contraddizione tra il contenuto di /etc/profile:

```
if [ "$EUID" = "0" ] || [ "$USER" = "root" ] ; then

   PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:${ROOTPATH}"

else

   PATH="/usr/local/bin:/usr/bin:/bin:${PATH}"

fi
```

e:

```
thorium ~ # echo $PATH

/sbin:/bin:/usr/sbin:/usr/bin
```

magari non c'entra nulla... boh.

@luna80:

ma quel comando è permanente? cioè, se riavvio le modifiche rimangono? se sì, dove vengono salvate?

----------

## neryo

 *paolo wrote:*   

> 
> 
> In pratica è uno script (in bash!) che potenzia la completion che già ha la bash e cioè quella feature che vi permette di "completare" la digitazione di un nome file semplicemente premendo il tasto TAB.
> 
> 

 

thanks... mi mancava..  :Wink: 

----------

## luna80

 *fctk wrote:*   

> mmh... c'è una contraddizione tra il contenuto di /etc/profile:
> 
> ```
> if [ "$EUID" = "0" ] || [ "$USER" = "root" ] ; then
> 
> ...

 

no, così facendo non viene mantenuta la modifica,...per farla mantenere devi editare il file /etc/profile (oppure .bashrc)

per quanto hai scritto prima, non capisco neppure io, posso dirti soltanto che c'entra anche il file /etc/profile.env

magari qualcuno ci può chiarire le idea,...grazie  :Smile: 

----------

## fctk

ho appena aggiornato l'howto su gentoo-wiki: http://gentoo-wiki.com/TIP_TAB-completion  :Cool: 

----------

## thewally

 *fctk wrote:*   

> ho appena aggiornato l'howto su gentoo-wiki: http://gentoo-wiki.com/TIP_TAB-completion 

 

Proprio quello che mi serviva... grazie  :Very Happy: 

----------

## Apetrini

Ottimo...

è la prima volta che provo questo software e devo dire che è parecchio utile...

l'installazione non mi ha dato nessun problema...

Ora volevo fare una domanda, ma voi non ditemi che sono il solito esagerato...

Un mio amico mi ha parlato che su windows esiste un utility che permette di memorizzare alcune combinazioni di caratteri e di abbinare a queste frasi o discorsi...

Esempio potrei bindare "/me" con il mio nick oppure "/saluto1" con la mia firma piu il nome e cognome, oppure "/Inizia" che mette la data il luogo e comincia con Caro.... 

sarebbe bello se anche su Linux esistesse una cosa del genere.

Qualcuno sa qualcosa?

----------

## mouser

Esiste sempre alias (che funziona anche con i comandi), ma non so se va con i caratteri /

```

$ alias me="mouser"

$ alias scrivi="echo"

$ scrivi me

mouser

$ 

```

Ciriciao

mouser  :Wink: 

----------

## Apetrini

Si, ma non mi serve per la shell, mi serve qualcosa per X.

Cosi posso usarlo qaundo vado nei forum o quando scrivo lettere e/o e-mail...

----------

## .:deadhead:.

Una cosa simile l'ho vista su applicativi specifici [client IM o IRC] ma non per l'intero X

----------

