01-17-2012
Hi,
Both are same w.r.t functionality , This variable points to the current directory
But $PWD is an environmental variable which can be used to set to a particular session/shell /script
Working principles of environment variables
A few simple principles govern how environment variables BY INSTALLING, achieve their effect.
Local to process
Environment variables are local to the process in which they were set. That means if we open two terminal windows (Two different processes running shell) and change value of environment variable in one window, that change will not be seen by other window.
Inheritance
When a child process is created, it inherits all the environment variables and their values from the parent process. Usually, when a program calls another program, it first creates a child process by forking, then the child adjusts the environment as needed and lastly the child replaces itself with the program to be called. This procedure gives the calling program control over the environment of the called program.
Case sensitive
In Unix and Unix-like systems the names of environment variables are case sensitive.
Persistence
Environment variables persistence can be session-wide or system-wide.
thanks,
venkat
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
We all know that pwd (or echo $PWD) gives us the present working dir as output.... but my doubt is that I'ld like to know how to get the present working folder - I mean - name of the current folder alone.. using pwd command I get the full folder name (right from root path)... I need to know... (2 Replies)
Discussion started by: mohanprabu
2 Replies
2. UNIX for Dummies Questions & Answers
Home directory mounted on one local system as /home/username, same directory mounted on a remote system as /home/engr/username.
How to use command to use remote host pwd. For example
rsh <remote host> ls -l ~pwd (2 Replies)
Discussion started by: bugsandbunny
2 Replies
3. UNIX for Advanced & Expert Users
Can anyone explain this in detail ...
echo ${PWD#${PWD%/*/*}/}
Thanks in Advance (1 Reply)
Discussion started by: sakthi.abdullah
1 Replies
4. UNIX for Advanced & Expert Users
Hi people...
i recently installed AIX 5.3 on a server...
but now when i login with root it only shows '# ' without the location where i am...
for example: if im in /usr/local
it continues to show only '# '
and i want to see the path like 'root@server:/usr/local#'
someone can help me? ... (2 Replies)
Discussion started by: gfca
2 Replies
5. UNIX for Dummies Questions & Answers
i've been searching the way to connect to pwd.db file located in /etc/ directory..
since i'm not the root and only one of the users of the server, i need to connect to the database so that i can make a login page for all users of the server..
the file is readable by all users and the permission... (1 Reply)
Discussion started by: meggae
1 Replies
6. UNIX for Dummies Questions & Answers
Hi,
Can you tell me if there is a command such as pwd which does not give me the absolute NFS pathname i.e. it starts with .autofs? At the moment on the unix when I use the 'pwd' command it always gives me the nfs pathname rather thanthe local pathname of which is what i want, is there an... (4 Replies)
Discussion started by: cyberfrog
4 Replies
7. AIX
currently, my samba login works just fine. i want my clients to use aix5.3 account to login to samba so they don't have to change samba pwd and aix pwd. i googled, and vi /usr/lib/smb.conf per some of knowledge base, but i could not get to work.
aix5.3 and samba 3.0.24.0
thanks in advace..... (2 Replies)
Discussion started by: tjmannonline
2 Replies
8. UNIX for Dummies Questions & Answers
Dear users,
One more question, In unix when i use pwd the following I get:
pwd
/Users/username/src/directory name
Is there a way to get the out put like this in which the if there is a space in the directory eg directory name it should show as directory\ name:... (2 Replies)
Discussion started by: kevincobain2000
2 Replies
9. Shell Programming and Scripting
Dear all,
I am trying to use 'pwd' command in following way.
current_directory == /dirA/dirB/test/dirC
if ; then
do this
fi
I am not sure how to pass this in command way. Please help!
thanking you,
emily (10 Replies)
Discussion started by: emily
10 Replies
10. UNIX for Beginners Questions & Answers
Hi all,when I cd to an environment variable "cd $MYDIR, if I type pwd, I don't the path to the environment variable dir I cd to. Appreciate the help, regards..Abbya (5 Replies)
Discussion started by: abbya
5 Replies
FORK(2) BSD System Calls Manual FORK(2)
NAME
fork -- create a new process
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <unistd.h>
pid_t
fork(void);
DESCRIPTION
fork() causes creation of a new process. The new process (child process) is an exact copy of the calling process (parent process) except for
the following:
o The child process has a unique process ID.
o The child process has a different parent process ID (i.e., the process ID of the parent process).
o The child process has its own copy of the parent's descriptors. These descriptors reference the same underlying objects, so that,
for instance, file pointers in file objects are shared between the child and the parent, so that an lseek(2) on a descriptor in the
child process can affect a subsequent read(2) or write(2) by the parent. This descriptor copying is also used by the shell to
establish standard input and output for newly created processes as well as to set up pipes.
o The child process' resource utilizations are set to 0; see setrlimit(2).
In general, the child process should call _exit(2) rather than exit(3). Otherwise, any stdio buffers that exist both in the parent and child
will be flushed twice. Similarly, _exit(2) should be used to prevent atexit(3) routines from being called twice (once in the parent and once
in the child).
In case of a threaded program, only the thread calling fork() is still running in the child processes.
Child processes of a threaded program have additional restrictions, a child must only call functions that are async-signal-safe. Very few
functions are asynchronously safe and applications should make sure they call exec(3) as soon as possible.
RETURN VALUES
Upon successful completion, fork() returns a value of 0 to the child process and returns the process ID of the child process to the parent
process. Otherwise, a value of -1 is returned to the parent process, no child process is created, and the global variable errno is set to
indicate the error.
ERRORS
fork() will fail and no child process will be created if:
[EAGAIN] The system-imposed limit on the total number of processes under execution would be exceeded. This limit is configuration-depen-
dent.
[EAGAIN] The limit RLIMIT_NPROC on the total number of processes under execution by this user id would be exceeded.
[ENOMEM] There is insufficient swap space for the new process.
SEE ALSO
execve(2), setrlimit(2), vfork(2), wait(2), pthread_atfork(3)
STANDARDS
The fork() function conforms to ISO/IEC 9945-1:1990 (``POSIX.1'').
HISTORY
A fork() system call appeared in Version 6 AT&T UNIX.
BSD
June 10, 2004 BSD