Quote:
Originally Posted by
nivaspIND
EDITOR=emacs # This is my fave editor
Hmm..., do NOT CONFUSE "EDITOR=" and "set -o", they are serving different purposes. If you want emacs-style commandline editing (for instance, "CTRL-P" for the previous command, "CTRL-N" for the next command, etc.) replace this line with "set -o emacs" or at least add this line to the file.
I suggest you read the man page about ksh or a good book about ksh to find out more about the many configuration options this shell has. One book i can recommend wholeheartedly is "The ksh Programming Tutorial" by Barry Rosenberg.
Not sure, what you want to achieve here, but if you want a command to clear the screen use "tput clear". That "clear" works is by chance and it might not be this way on the next machine, but "tput clear" will works always. You might consider changing the line to "alias c='tput clear'".
You do not have to type "exit" to leave the shell. A simple "CTRL-D" (which is a EOF character, actually) will also get you out of the shell.
To understand this consider the following: an interactive shell session is quite the same as a shell executing a script. The interactive shell is just "reading" your terminal as input file. If you present an EOF character you tell the shell that this "input file" is finished her - so the shell will stop and exit.
You can prevent this behavior (and this is sometimes done out of a false sense of security, because it adds nothing to the security of a system) by setting "set -o ignoreeof", which will cause the shell to ignore this EOF character. If your system is configured this way you can change the setting by "set +o ignoreeof".
Quote:
when I type
$ oslevel -r command - I get the result but with the screen cleared
but when I use with sudo , I have no issues
$ sudo oslevel -r ....... i get the result at the next line......
Issue the "alias" command to list all aliases in effect. maybe the oslevel command is not what it should be.
Alternatively use "which oslevel" to find out if there is some script named oslevel before the binary in the path. The "$PATH" variable is searched consecutively and if it looks like "/usr/local/bin:/usr/bin:..." and in /usr/local/bin is an executable file named the same way as one in /usr/bin you would use the one from /usr/local/bin and not from /usr/bin. The "which" command tells you which one it will load effectively.
If something like this is the case either "unalias" the offending alias or Reaarrange the $PATH variable. by simply setting it anew: "PATH=/first/dir:/second/dir:....". You could put this also in your .kshrc.
I hope this helps.
bakunin