Newsgroup: it.comp.os.linux.iniziare
Titolo: Variabili d'ambiente

Ciao a tutti,
volevo chiedervi come potevo fare a cancellare una variabile d'ambiente 
o meglio una riga del PATH.
 
 
~/Scaricati/pycharm-2017.1.4/bin$ echo $PATH | sed s/:/'\n'/g
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games
/snap/bin
/path/to/my/program  ---> linea da eliminare
/home/dbruno/Scaricati/pycharm-2017.1
 
Se eseguo unset PATH mi cancella tutto il contenuto?
Non ho ancora provato :-)
 
Ho scaricato pycharm e volevo renderlo eseguibile da riga di comando 
senza accedere alla cartella bin e lanciare lo script bash:
 
dbruno@dbruno:~/Scaricati/pycharm-2017.1.4$ ls -la
total 48
drwxrwxr-x 10 dbruno dbruno 4096 giu 24 10:23 .
drwxr-xr-x 18 dbruno dbruno 4096 giu 24 10:23 ..
drwxrwxr-x  2 dbruno dbruno 4096 giu 24 10:25 bin
-rw-r--r--  1 dbruno dbruno   14 giu 13 14:48 build.txt
drwxrwxr-x  2 dbruno dbruno 4096 giu 24 10:23 debug-eggs
drwxrwxr-x  2 dbruno dbruno 4096 giu 24 10:23 help
drwxrwxr-x 17 dbruno dbruno 4096 giu 24 10:23 helpers
-rw-r--r--  1 dbruno dbruno 1887 giu 13 14:48 Install-Linux-tar.txt
drwxrwxr-x  4 dbruno dbruno 4096 giu 24 10:23 jre64
drwxrwxr-x  4 dbruno dbruno 4096 giu 24 10:23 lib
drwxrwxr-x  2 dbruno dbruno 4096 giu 24 10:23 license
drwxrwxr-x 52 dbruno dbruno 4096 giu 24 10:23 plugins
 
 
:~/Scaricati/pycharm-2017.1.4/bin$ ls -la
total 7120
drwxrwxr-x  2 dbruno dbruno    4096 giu 24 10:25 .
drwxrwxr-x 10 dbruno dbruno    4096 giu 24 10:23 ..
-rw-rw-r--  1 dbruno dbruno       0 giu 24 20:18 0M?+
-rwxr-xr-x  1 dbruno dbruno     221 giu 13 14:48 format.sh
-rwxr-xr-x  1 dbruno dbruno   23072 giu 13 14:48 fsnotifier
-rwxr-xr-x  1 dbruno dbruno   29648 giu 13 14:48 fsnotifier64
-rwxr-xr-x  1 dbruno dbruno   26453 giu 13 14:48 fsnotifier-arm
-rw-r--r--  1 dbruno dbruno   10804 giu 13 14:48 idea.properties
-rwxr-xr-x  1 dbruno dbruno     272 giu 13 14:48 inspect.sh
-rw-r--r--  1 dbruno dbruno 3449944 giu 13 14:48 libyjpagent-linux64.so
-rw-r--r--  1 dbruno dbruno 3679036 giu 13 14:48 libyjpagent-linux.so
-rw-r--r--  1 dbruno dbruno    2236 giu 13 14:48 log.xml
-rwxr-xr-x  1 dbruno dbruno     410 giu 13 14:48 printenv.py
-rw-r--r--  1 dbruno dbruno     329 giu 13 14:48 pycharm64.vmoptions
-rw-r--r--  1 dbruno dbruno   10281 giu 13 14:48 pycharm.png
-rwxr-xr-x  1 dbruno dbruno    6860 giu 13 14:48 pycharm.sh
-rw-r--r--  1 dbruno dbruno     337 giu 13 14:48 pycharm.vmoptions
-rwxr-xr-x  1 dbruno dbruno     590 giu 13 14:48 restart.py
 
Mi potete aiutare ?
 
Grazie

 Mi potete aiutare ?
 
Io un aiutino te lo do volentieri, ma sono poco adatto a risolvere
questi casini immani che hai fatto (io "Scaricati" nel path non ce
l'avrei messo neanche sotto tortura!), ci vuole un amministratore
di rete che certamente gliene fanno di cotte e di crude tutti i giorni!
 
Posso dirti come cancellare la riga.
 
Il PATH viene fissato, al login, secondo quel che c'e' scritto in quelli
che nella tua distro ci sono dei file seguenti:
/etc/profile
/etc/bash.bashrc
/etc/bashrc
~/.profile
~/..bashrc
~/.qualcosa-che-non-ricordo-bash-qualcos'altro
 
(ce ne devono essere 2 in /etc e 2 nella tua home, non 3).
 
Tu devi trovare dove c'e' "/path/to/my/program", percio' puoi dare:
 
$: grep /path/to/my/program /etc/profile /etc/bash.bashrc /etc/bashrc \
~/.profile ~/..bashrc ~/.qualcosa-che-non-ricordo-bash-qualcos'altro
 
e grep ti dice dov'e'. Anzi, quasi al 100% e' nei due della tua home,
comincia da quelli (solo un programma criminale lo mette nei file di
sistema e poi dovrebbe passare per sudo).
 
Allora basta semplicemente che cancelli: ":/path/to/my/program" dalla
riga di quel file.
 
Ciao
 
-- 
bye, Yoda
 

 ~/.qualcosa-che-non-ricordo-bash-qualcos'altro
 
Ho risolto.
Grazie
 
Ma come faccio a visualizzarlo sul launcher?
 

Addi' 24 giu 2017, Smith scrive:

Mi spiace ma di X non ne so praticamente niente, se lo dici per il PATH
in KDE, ricordo (ora ho LXDE) che c'era un modo per aggiungere righe al
 .bashrc (perche' nel terminale bash e' forkata, non e' quella di login
come in console che legge .profile).
 
Qualcosa come:
 
if [ -n $KONSOLE_DCOP ]; then
tutte le cose
che vuoi
fi
 
Ma serve solo se hai KDE e se come terminale usi konsole -- ciao!
 
-- 
bye, Yoda
 

 Ma serve solo se hai KDE e se come terminale usi konsole -- ciao!
 
Scusa dimenticavo una precisazione: NON usare questo if senza prima
trovarlo documentao bene, te l'ho dato solo per agevolarti qualche
eventuale ricerca -- ciao
 
-- 
bye, Yoda