Welcome to the Linux Foundation Forum!

more man page trouble

Posts: 37

Linux nEWb,

working my way through the man pages still... confused one in this statement? : export PATH="$PATH:/opt/gnome/bin" I thought I could do export PATH="$PATH=/opt/gnome/bin"???.... Also, this is temp? when I reboot it's gone? right? If I'm learning anything I'd have to put it in ./bashrc or ./bash_profile right?

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Comments

  • Posts: 2,177
    I am a bit confused because you show the same command in both cases, but the command would be
    1. export PATH="/opt/gnome/bin"


    If you enter the command via terminal then it is temporary and will only exist as long as that terminal session is open, you are correct in saying that you need to append it to .bashrc to keep it for future sessions.
  • Posts: 6
    I think you should use
    1. export PATH="${PATH}:/opt/gnome/bin"
    this appends your PATH-variable.
    1. export PATH="/opt/gnome/bin"
    overwrites it afaik.
  • Posts: 12
    I'd suggest that you do an
    1. echo $PATH
    . That will show you what your PATH variable currently is; it'll be a whole lot of directories, separated by colons. When you type in a command without a path, for example "ls", it will search through those directories, one by one, for a program entitled ls and run it.

    Now if you try
    1. export PATH="$PATH:/opt/gnome/bin"
    and then
    1. echo $PATH
    again, you'll see that the PATH environment variable now has ":/opt/gnome/bin" stuck on the end, but is otherwise unchanged. (The colon is there to separate directories).

    Using an equals instead of a colon will probably (I'm not quite sure here) result in it trying to look in a directory with a name something like /bin=/opt/gnome/bin every time it tries to run a command; since /bin= (presumably) doesn't exist, this will cause a problem. Especially as it's no longer looking in /bin (which includes, for example, ls); which can cause problems. (Your PATH might not have /bin at the end; it is merely used in an illustrative sense).

    If you use
    1. export PATH="/opt/gnome/bin"
    , then your path will only consist of /opt/gnome/bin. Now try something simple, like ls... and then it's probably a good idea to close that terminal and open a new one.
  • Posts: 501
    CCC wrote:
    Now if you try
    1. export PATH="$PATH:/opt/gnome/bin"
    and then
    1. echo $PATH
    again, you'll see that the PATH environment variable now has ":/opt/gnome/bin" stuck on the end, but is otherwise unchanged. (The colon is there to separate directories).
    DON'T do this:
    1. export PATH="$PATH:/opt/gnome/bin"
    as environment variables can get confused depending upon the following character (a colon in this case). It is better to use
    1. export PATH="${PATH}:/opt/gnome/bin"
    Using $PATH by itself is not recommended. Using ${PATH} is as there is no ambiguity - the terminating curly-brace is definitive.
  • Posts: 117
    if you are confuse, the easiest way is to add the "/opt/gnome/bin"
    to the last colon in the line PATH in your .bashrc

    ;)
  • Posts: 12
    woboyle wrote:
    CCC wrote: DON'T do this:
    1. export PATH="$PATH:/opt/gnome/bin"
    as environment variables can get confused depending upon the following character (a colon in this case). It is better to use
    1. export PATH="${PATH}:/opt/gnome/bin"
    Using $PATH by itself is not recommended. Using ${PATH} is as there is no ambiguity - the terminating curly-brace is definitive.

    My apologies. You are, of course, perfectly correct; the {}s are better practice.
  • Posts: 60
    ?
  • ? is right. It would appear you are having him switch users to himself to source in the new PATH.

    the quicker and easier way to refresh your terminal is to just execute the command:
    source .bashrc

    Although you have to be in your home directory for that to work. Otherwise you have to put in the full path.

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training