chown()
,
chmod()
, and umask()
to the file operations extension
presented in C Code for chdir()
and stat()
.
isatty()
function to tell if the input file is a terminal. (Hint: this function
is usually expensive to call; try to call it just once.)
The content of the prompt should come from a variable settable
by awk
-level code.
You can write the prompt to standard error. However,
for best results, open a new file descriptor (or file pointer)
on /dev/tty and print the prompt there, in case standard
error has been redirected.
Why is standard error a better choice than standard output for writing the prompt? Which reading mechanism should you replace, the one to get a record, or the one to read raw bytes?