I faced similar issue while i was developing tools for navigating to different directories, I wrote script to change user CWD to desired one (from the inputs provided) but as script used to run in sub-shell it used to bring user back to original directory!!
To avoid that i created functions, here is sample code .. (writing directly here..)
Code:
$ cat chageDir.sh
newDir=$1
cd $newDir
$ function changeDir {
. Path/to/script/changeDir.sh $@
}
changeDir /tmp
by creating function, you can avoid writing ". /" or "source", good from user point of view... also function allows sending arguments. If there are no arguments just use alias!
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)
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 FREEBSD
script
SCRIPT(1) BSD General Commands Manual SCRIPT(1)NAME
script -- make typescript of terminal session
SYNOPSIS
script [-adfkpqr] [-F pipe] [-t time] [file [command ...]]
DESCRIPTION
The script utility makes a typescript of everything printed on your terminal. It is useful for students who need a hardcopy record of an
interactive session as proof of an assignment, as the typescript file can be printed out later with lpr(1).
If the argument file is given, script saves all dialogue in file. If no file name is given, the typescript is saved in the file typescript.
If the argument command is given, script will run the specified command with an optional argument vector instead of an interactive shell.
The following options are available:
-a Append the output to file or typescript, retaining the prior contents.
-d When playing back a session with the -p flag, do not sleep between records when playing back a timestamped session.
-F pipe
Immediately flush output after each write. This will allow a user to create a named pipe using mkfifo(1) and another user may watch
the live session using a utility like cat(1).
-f Create file.filemon or typescript.filemon using filemon(4).
-k Log keys sent to the program as well as output.
-p Play back a session recorded with the -r flag in real time.
-q Run in quiet mode, omit the start, stop and command status messages.
-r Record a session with input, output, and timestamping.
-t time
Specify the interval at which the script output file will be flushed to disk, in seconds. A value of 0 causes script to flush after
every character I/O event. The default interval is 30 seconds.
The script ends when the forked shell (or command) exits (a control-D to exit the Bourne shell (sh(1)), and exit, logout or control-D (if
ignoreeof is not set) for the C-shell, csh(1)).
Certain interactive commands, such as vi(1), create garbage in the typescript file. The script utility works best with commands that do not
manipulate the screen. The results are meant to emulate a hardcopy terminal, not an addressable one.
ENVIRONMENT
The following environment variables are utilized by script:
SCRIPT
The SCRIPT environment variable is added to the sub-shell. If SCRIPT already existed in the users environment, its value is overwrit-
ten within the sub-shell. The value of SCRIPT is the name of the typescript file.
SHELL If the variable SHELL exists, the shell forked by script will be that shell. If SHELL is not set, the Bourne shell is assumed. (Most
shells set this variable automatically).
SEE ALSO csh(1), filemon(4) (for the history mechanism).
HISTORY
The script command appeared in 3.0BSD.
The -d, -p and -r options first appeared in NetBSD 2.0 and were ported to FreeBSD 9.2.
BUGS
The script utility places everything in the log file, including linefeeds and backspaces. This is not what the naive user expects.
It is not possible to specify a command without also naming the script file because of argument parsing compatibility issues.
When running in -k mode, echo cancelling is far from ideal. The slave terminal mode is checked for ECHO mode to check when to avoid manual
echo logging. This does not work when the terminal is in a raw mode where the program being run is doing manual echo.
If script reads zero bytes from the terminal, it switches to a mode when it only attempts to read once a second until there is data to read.
This prevents script from spinning on zero-byte reads, but might cause a 1-second delay in processing of user input.
BSD December 4, 2013 BSD