HPUX TildeSubst[3]

TildeSubst in anderen Kapiteln des hpux Handbuch:
Tcl_TildeSubst(3) Tcl Tcl_TildeSubst(3)
Tcl Library Procedures Tcl Library Procedures
7.0
___________________________________________________________________________
NAME
Tcl_TildeSubst - replace tilde with home directory in a file name
SYNOPSIS
#include <tcl.h>
char *
Tcl_TildeSubst(interp, name, bufferPtr) |
ARGUMENTS
Tcl_Interp *interp (in) Interpreter in which to report an
error, if any.
char *name (in) File name, which may start with a
``~''.
Tcl_DString *bufferPtr If needed, this dynamic string is |
used to store the new file name. |
At the time of the call it should |
be uninitialized or empty. The |
caller must eventually call |
Tcl_DStringFree to free up |
anything stored here. |
___________________________________________________________________________
DESCRIPTION
This utility procedure does tilde substition. If name doesn't start
with a ``~'' character, then the procedure returns name. If name does
start with a tilde, then Tcl_TildeSubst returns a new string identical
to name except that the first element of name is replaced with the
location of the home directory for the given user. The substitution
is carried out in the same way that it would be done by csh. If the
tilde is followed immediately by a slash, then the $HOME environment
variable is substituted. Otherwise the characters between the tilde
and the next slash are taken as a user name, which is looked up in the
password file; the user's home directory is retrieved from the
password file and substituted.
If Tcl_TildeSubst has to do tilde substitution then it uses the |
dynamic string at *bufferPtr to hold the new string it generates. |
After Tcl_TildeSubst returns, the caller must eventually invoke |
Tcl_DStringFree to free up any information placed in *bufferPtr. The |
caller need not know whether or not Tcl_TildeSubst actually used the |
string; Tcl_TildeSubst initializes *bufferPtr even if it doesn't use |
it, so the call to Tcl_DStringFree will be safe in either case. |
- 1 - Formatted: August 11, 1996
Tcl_TildeSubst(3) Tcl Tcl_TildeSubst(3)
Tcl Library Procedures Tcl Library Procedures
7.0
If an error occurs (e.g. because there was no user by the given name)
then NULL is returned and an error message will be left at interp-
>result. It is assumed that interp->result has been initialized in
the standard way when Tcl_TildeSubst is invoked.
KEYWORDS
file name, home directory, tilde, user
- 2 - Formatted: August 11, 1996