I seem to recall csh was semi-case-insensitive, another reason to stay away.
'PATH' is hard coded into exec(), the library path variable whatever it is on the brand in the synamic linker, MANPATH into man, and '$PWD' changes no matter how you change the working directory, so the environment has many frozen variables. I checked my local CScope web utility. Lots of include files mention PATH, but none has "PATH" -- maybe in the kernel C?
Code:
/usr/include/limits.h <unknown> 71 # define _POSIX_PATH_MAX 255 /* The number of bytes in a pathname */
/usr/include/limits.h <unknown> 284 # define PATH_MAX 1023 /* max number of characters in a pathname (not
/usr/include/sys/param.h <unknown> 388 * MAXPATHLEN defines the longest permissable path length
/usr/include/sys/param.h <unknown> 398 #define MAXPATHLEN 1024
/usr/include/.unsupp/sys/_errno.h <unknown> 22 # define EPATHREMOTE 133 /* Pathname is remote */
/usr/include/sys/unistd.h <unknown> 712 # define _PC_PATH_MAX 4 /* PATH_MAX: Max # of bytes in a pathname */
/usr/include/sys/unistd.h <unknown> 800 # define _CS_PATH 200 /* Search path that finds all POSIX.2 utils */
/usr/include/sys/unistd.h <unknown> 873 # define GF_PATH "/etc/group" /* Path name of the "group" file */
/usr/include/sys/unistd.h <unknown> 874 # define PF_PATH "/etc/passwd" /* Path name of the "passwd" file */
/usr/include/sys/unistd.h <unknown> 875 # define IN_PATH "/usr/include" /* Path name for <...> files */
/usr/include/sys/unistd.h <unknown> 880 # define CS_PATH \
/usr/include/sys/ptrace.h <unknown> 79 #define PT_GET_PROCESS_PATHNAME 23 /* Get Pathname for exec'd file */
/usr/include/sys/ptrace.h <unknown> 81 #define IS_PTRACE_REQ(i) ((i) >= PT_SETTRC && (i) <= PT_GET_PROCESS_PATHNAME)
/usr/include/sys/scall_define.h <unknown> 323 #define SYS_PATHCONF 230
/usr/include/sys/scall_define.h <unknown> 325 #define SYS_FPATHCONF 231
/usr/include/sys/scall_define.h <unknown> 751 #define SYS_SENDPATH 480
/usr/include/sys/scall_define.h <unknown> 755 #define SYS_SENDPATH64 482
/usr/include/sys/scall_define.h <unknown> 761 #define SYS_MODPATH 485
/usr/include/sys/semglobal.h <unknown> 231 * DLM_MPATH_LOCK_ORDER mod_mpath_lock: rw-sleep
/usr/include/sys/semglobal.h <unknown> 241 #define DLM_MPATH_LOCK_ORDER DLM_TOP_LOCK_ORDER - 20
Hi!
How-to get the environment variables in GNU.
getenv() only fetches the ones that you can find under export (not the ones under declare)...
best regars .David (2 Replies)
hi,
1). i would like to know what is meant by environment variables?
2). is the number of envi variables is a constant number for unix systems?
3). how to see the list of envi variables (and the values of the envi variables)in a single command?
4). if this questions were already asked... (3 Replies)
hi,
I want to create a new EV(Environment Variable) through a c program and I done this thing through setenv() method. But the newly created EV is not permanent, i.e. when I exit from the program the EV also no longer lives. But I want to make it a permanent EV for the current user. Actually I... (6 Replies)
I have read tons of posts about how you can't set persisting environment variable in a child script of a shell and have it persist. The only way is to source a file as
% . <scriptname>
I am finding that true... but I know there is a way around it. I just don't know how. I worked for 6... (5 Replies)
Hi Experts,
Need your help in understanding the commands to setup the environment variables in hp-ux.
Beleive need to use either set,setenv or export.
I am confused between above three options, when to use which option?
On command line, I have tried both set and setenv but couldn't... (1 Reply)
1. The problem statement:
What is the mesg value set for your environment? If it is on, how would you turn off your current
session? How would you set it permanently?
3. The attempts at a solution :
Read Unix The textbook.
3rd chapter has many things like environment variables and... (5 Replies)
Hi All,
I need to understand following three environment variables and their usages in HP Unix.
_M_ARENA_OPTS
_M_CACHE_OPTS
PTHREAD_SCOPE_SYSTEM
How does these environment variables influence multi threaded applciation and how do we decide the value of these variables? Is there... (0 Replies)
Discussion started by: angshuman
0 Replies
LEARN ABOUT OSF1
cd
cd(1) General Commands Manual cd(1)NAME
cd - Changes the current working directory
SYNOPSIS
cd [directory]
Note
The C shell has a built-in version of the cd command. If you are using the C shell, and want to guarantee that you are using the command
described here, you must specify the full path /usr/bin/cd. See the csh(1) reference page for a description of the built-in command.
STANDARDS
Interfaces documented on this reference page conform to industry standards as follows:
cd: XCU5.0
Refer to the standards(5) reference page for more information about industry standards and associated tags.
OPTIONS
None
OPERANDS
The pathname (either full or relative) to be used as the new working directory.
If (hyphen) is specified as the directory, the cd command changes your current (working) directory to the directory name saved in
the environment variable OLDPWD.
DESCRIPTION
The cd command moves you from your present directory to another directory. You must have execute (search) permission in the specified
directory.
If you do not specify a directory, cd moves you to your login directory ($HOME in ksh and sh environments, or $home in csh environment).
If the specified directory name is a full pathname, it becomes the current working directory. A full pathname begins with a / (slash) for
the root directory, with a . (dot) for the current working directory, or with a .. (dot dot) for the parent directory. If the directory
name is not a full pathname, cd searches for it relative to one of the paths specified by the $CDPATH shell variable (or $cdpath csh vari-
able). This variable has the same syntax as, and similar semantics to, the $PATH shell variable (or $path csh variable).
EXIT STATUS
The following exit values are returned:
The directory was successfully changed. An error occurred.
EXAMPLES
To change to your home directory, enter: cd To change to a new directory, enter: cd /usr/include
This changes the current working directory to /usr/include. Now file pathnames that do not begin with / or ../ specify files located
in /usr/include. To go down one level of the directory tree, enter: cd sys
If the current working directory is /usr/include and if it contains a subdirectory named sys, then /usr/include/sys becomes the cur-
rent working directory. To go up one level of the directory tree, enter: cd ..
The special filename .. (dot dot) always refers to the directory immediately above the current working directory.
ENVIRONMENT VARIABLES
The following environment variables affect the execution of cd: A colon-separated list of pathnames that refer to directories. If the
directory operand does not begin with a / (slash) character, and the first component is not (dot) or cd command will search for directory
relative to each directory named in the CDPATH variable, in the order listed. The new working directory will be set to the first matching
directory found. An empty string in place of a directory pathname represents the current directory. If CDPATH is not set, it will be
treated as if it were an empty string. The name of the home directory, used when no directory operand is specified. Provides a default
value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default
locale is used. If any of the internationalization variables contain an invalid setting, the utility behaves as if none of the variables
had been defined. If set to a non-empty string value, overrides the values of all the other internationalization variables. Determines
the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte char-
acters in arguments). Determines the locale for the format and contents of diagnostic messages written to standard error. Determines the
location of message catalogues for the processing of LC_MESSAGES. A pathname of the previous working directory, used by the cd - form of
the command. The cd command sets this variable to your current working directory before changing to a new current directory. A pathname
of the current working directory, set by the cd command after it has changed to that directory.
SEE ALSO
Commands: csh(1), ksh(1), pwd(1), Bourne shell sh(1b), POSIX shell sh(1p)
Functions: chdir(2)
Environment: environ(5)
Standards: standards(5)cd(1)