Sponsored Content
Top Forums UNIX for Beginners Questions & Answers How are environment variables defined in a Gnome terminal session? Post 303009873 by bodisha on Thursday 21st of December 2017 11:37:22 AM
Old 12-21-2017
First... thanks for the reply! I hope I can ask for your patience as I try to understand this

I've done quite a bit of reading to try and understand this.... The documentation I had read said that the Bash login scripts (/etc/profile, ~/.bash_profile, ~/.profile, etc) wouldn't get sourced/executed in an interactive non-login shell mode (i.e. Gnome terminal)... and this specific shell mode would only read the /etc/bashrc and the ~/.bashrc scripts.

This had me slightly confused on how a Gnome terminal might go about getting environment variables that would be required to make programs work correctly in an interactive login shell mode (i.e. SSH, Telnet, etc). So I started playing with it.

Like I said, I discovered, if I defined variables simply as local variables (without the 'export' command) in the login scripts they would not be displayed in the output of set/printenv commands.... Which is how the documentation said it would behave

But by playing with things, I discovered if I exported the variable in the Bash login scripts, they were appearing in the output of the set/printenv commands. Initially I thought they were being exported as a global variable from an SSH (putty) sessions

So I did a reboot, and logged in directly to Gnome (Multiple times), to make sure I wasn't accidentally exporting a global variable by a SSH session.

To try and figure this out... I started poking around Gnome and found the /etc/X11/xinit/xinitrc-common file sources the $HOME/.profile script. But this hardly explains the exported variables from the other login scripts... So I'm left pretty baffled on why documentation is saying one thing... But what I'm see Centos & Gnome do is something totally different

Anyway... once again thank you for your reply... If you could help me understand this I would be extremely grateful!!!
 

10 More Discussions You Might Find Interesting

1. Linux

environment variable is not defined

moved to correct thread (0 Replies)
Discussion started by: alien12
0 Replies

2. Shell Programming and Scripting

sqlplus session being able to see unix variables session within a script

Hi there. How do I make the DB connection see the parameter variables passed to the unix script ? The code snippet below isn't working properly. sqlplus << EOF user1@db1/pass1 BEGIN PACKAGE1.perform_updates($1,$2,$3); END; EOF Thanks in advance, Abrahao. (2 Replies)
Discussion started by: 435 Gavea
2 Replies

3. Linux

Launch application in gnome session of another user.

A gnome session is launched by UserA of System A, I am connected to userB of System B(or A) through PUTTY. I want to launch an application for eg: gedit through Putty in the display of system A. how can I achieve this. for eg:- root is logged in to System A, with gdm. DISPLAY=0.0, ip =... (4 Replies)
Discussion started by: Sivaswami
4 Replies

4. Shell Programming and Scripting

Problem with gnome-terminal

Hello everyone. This is my first post.:o Using Ubuntu 8.04 and bash 3.2.39 i'm trying to adapt my routine to this platform. So, this means forget xterm and use gnome-terminal (as default ubuntu terminal). EveryDay i need to connect to several servers, and i've made a Tcl'script to make this... (1 Reply)
Discussion started by: trutoman
1 Replies

5. Solaris

I am not able to login in gnome session and java session in Sun solaris 9& 10

I am not able to login in gnome session and java session in Sun solaris 9& 10 respectively through xmanager as a nis user, I am able to login in common desktop , but gnome session its not allowing , when I have given login credentials, its coming back to login screen, what shoul I do to allow nis... (0 Replies)
Discussion started by: durgaprasadr13
0 Replies

6. Debian

Gnome session reverts back to gdm on login.

Hi everyone. I just had a quick problem. I'm not too familiar with linux yet, otherwise I'd have this figured out by now. I recently did the Debian 5lenny7 update with the standard debian update manager. After getting all installed and rebooted, I tried to login to my account again. Every... (3 Replies)
Discussion started by: runfaj
3 Replies

7. UNIX for Dummies Questions & Answers

Finding WHERE an environment variable is defined.

HI. I had an environment variable defined in my .bash_profile file and I deleted it. I opened a new terminal and looked inside .bash_profile and it's not there but when I type printenv MYCONFIG it reutrns what the value used to be in my .bash_profile still!! I did a grep for MYCONFIG and... (6 Replies)
Discussion started by: dissectcode
6 Replies

8. UNIX for Dummies Questions & Answers

gnome-terminal questions

I have a couple questions regarding gnome-terminal. Basically I am trying to write an alias that will bring up several gnome-terminals that navigate to certain directories and run certain commands. I have it pretty well figured out, but the one I am having a problem with is simply running a... (2 Replies)
Discussion started by: Tennesseej
2 Replies

9. Shell Programming and Scripting

Issue with gnome terminal

Hi, I cant get this command to run in a new gnome terminal cd "$PRG" && gnome-terminal -x sh -c './prg -r testcommand' &>/dev/null & i can run just ./prg -r testcommand and it runs fine but in the command above it only runs ./prg Any ideas community Cheers in advance (0 Replies)
Discussion started by: digitalviking
0 Replies

10. Shell Programming and Scripting

Doing math using user defined input and system environment variables

Hi, I need some help to setup some environmental variables. for example...Get A -> userdefined/user input B -> a number. c -> system variable...for example $GETCONF PAGE_SIZE E = do some math using bc display a message "The value is E" setup the system/kernel paramter sysctl -p... (3 Replies)
Discussion started by: saravanapandi
3 Replies
environ(5)							File Formats Manual							environ(5)

NAME
environ - User environment SYNOPSIS
extern char **environ; DESCRIPTION
An array of strings called the environment is made available by the execve() function when a process begins. By convention these strings have the form name=value. The following names are used by various commands: A startup list of commands read by ex, edit, and vi. A user's login directory, set by login from the password file passwd. The sequence of directories, separated by colons, searched by csh, sh, sys- tem, execvp, etc, when looking for an executable file. PATH is set to :/usr/ucb:/bin:/usr/bin initially by login. The name of the default printer to be used by lpr, lpq, and lprm. The full pathname of the user's login shell. The kind of terminal for which output is to be prepared. This information is used by commands, such as nroff which may exploit special terminal capabilities. The string describing the terminal in the TERM environment variable, or, if it begins with a / (slash), the name of the termcap file. See TERMPATH below. A sequence of pathnames of termcap files, separated by colons or spaces, which are searched for terminal descriptions in the order listed. Having no TERMPATH is equivalent to a TERMPATH of $HOME/.termcap:/etc/termcap. TERMPATH is ignored if TERMCAP contains a full pathname. The login name of the user. Further names may be placed in the environment by the export command and name=value arguments in sh, or by the setenv command if you use csh. It is unwise to change certain sh variables that are frequently exported by files, such as MAIL, PS1, PS2, and IFS. SEE ALSO
Functions: exec(2), system(3) Commands: csh(1), ex(1), login(1), sh(1) environ(5)
All times are GMT -4. The time now is 12:39 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy