Come dire allo schermo GNU di eseguire .bash_profile in ogni nuova finestra?


18

Quando apro una nuova finestra nella schermata GNU, viene eseguita .bashrcma non .bash_profile. Nella mia configurazione, ciò comporta che alcune variabili di ambiente non vengano impostate correttamente in quella finestra.

Come posso dire allo schermo GNU di funzionare sempre .bash_profileinvece di .bashrcaprire una nuova finestra? (Per favore, non dirmi di chiamare .bash_profiledal mio .bashrc:)

Risposte:


33

Volete avviare bash (o qualunque shell) come shell di login. Lo fai con

shell -$SHELL

nel tuo ~/.screenrc. La magia è -prima del guscio. Vedi man screenrcper i dettagli. (Beh, non molti più dettagli, perché è praticamente tutto.)


1
Quando lo faccio, lo schermo si avvia nella directory in cui utilizzo il comando. Come posso fare in modo che lo schermo usi la directory da cui lancio il comando come directory in cui si avvia?
theonlygusti,

Non capisco quella manpage! I documenti online sono qui però: gnu.org/software/screen/manual/screen.html#Shell . Inizialmente mi sono confuso perché lo screenrc viene riletto solo quando viene ricreato uno schermo - non ogni volta che si crea una nuova finestra all'interno dell'applicazione
JonnyRaa,

@theonlygusti Per me, la directory di lavoro viene preservata quando si configura .screenrc come suggerito.
Holger Brandl,

2

Si sarebbe sia bisogno di fonte ~/.bash_profileda ~/.bashrco mettere le cose che avete bisogno direttamente ~/.bashrco mettere le cose in comune in un terzo file e la fonte da sia il vostro ~/.bashrce ~/.bash_profile.


DOVE procurarseli? ... be cuz CHE È IL PROBLEMA (lo schermo NON ne
procura

@THESorcerer: Sul mio sistema, screenfonti ~/.bashrcsenza il shellcomando mostrato nell'altra risposta.
In pausa fino a nuovo avviso.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.