03-18-2005
Ya, as explained by Bhargav, it gives the return value of the Previous command.
In the above, when you run the jfdfkjd at the prompt, which is not a valid command, the system (shell) fired with command not found...and so when you immediately check $?, it give the return (exit status) of the previous command, and since the value is greater than 0, says that the previous command was an abnormal kind of operation.
Where as next time when data was executed, since its a valid command, it did work fine and hence when you immediately execute $? it return 0 saying that the previuos unix operation was a normal/smooth/perfect operation.
Even you can follow the similar decipline in your programming either C or Shell scripting (use exit 0 in shell script to indicate operationg was smooth else use exit <any greater than zero value> to indicate a failure operation.) This is a good dicipline programming approach.
Small Test, try this..at the command prompt prompt
abcd
echo $?
echo $?
ls
echo $?
echo $?
abcd
echo $?
echo $?
echo $?
-->All the best in your test.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I know in DOS, when you want to pull up your last/previous command, you hit the up/down arrows. How do you do that with UNIX? (3 Replies)
Discussion started by: Tracy Hunt
3 Replies
2. Shell Programming and Scripting
Just a super quick question:
how do you put a link in your php code.
I want to make a link to something in /tmp directory.
i.e. how do you put a href into php, I think it's done a bit differently.
thanks
john (1 Reply)
Discussion started by: jmg5
1 Replies
3. UNIX for Dummies Questions & Answers
Hello There!
I am trying to write this SIMPLE script in Bourne Shell but I keep on getting syntax errors. Can you see what I am doing wrong? I've done this before but I don't see the difference. I am simply trying to take the day of the week from our system and when the teachers sign on I want... (7 Replies)
Discussion started by: catbad
7 Replies
4. UNIX for Dummies Questions & Answers
Hi guys
sed -e "s/$<//g"
the $< can allow me to assign an input value to the variable right?
do the double quotes check the previous context? (1 Reply)
Discussion started by: hamoudzz
1 Replies
5. UNIX for Dummies Questions & Answers
Hi, I am new to UNIX, and am learning from this tutorial : http://www.ee.surrey.ac.uk/Teaching/Unix/index.html
It keeps telling me to files downloaded from the internet (like .txt files) to the directory, and I dont know how to.
How do I add .txt files to my directory? Thanks. (6 Replies)
Discussion started by: IAMTHEEVILBEAN
6 Replies
6. UNIX for Dummies Questions & Answers
Hi,
Is there a simple way, using ksh, to find the byte position in a file that a stated character appears?
Many thanks
Helen (2 Replies)
Discussion started by: Bab00shka
2 Replies
7. UNIX for Dummies Questions & Answers
from command prompt I did grep two words on a same line for eg: grep abc | grep xyz and I got tht particular line, but I want to know when I vi that file how to directly search for that particular line? I appreciate if any one can provide answer, thanks in advance (2 Replies)
Discussion started by: pkolishetty
2 Replies
8. UNIX for Dummies Questions & Answers
Hello all,
Quick question from a fairly new to Unix developer.
if
then
completedLogFile=$logfile.$(date +%Y%m%d-%H:%M:%S)
mv $logfile $completedLogFile
fi
I understand that this portion of code is simply copying a tmp logfile to a completed logfile when a condition is true. The... (2 Replies)
Discussion started by: JohnnyBoy
2 Replies
9. UNIX for Dummies Questions & Answers
I'd like to list all userid's on the system that have a .bashrc file in their home directory with a command like "cat /etc/passwd | grep -f", however I'm not quite familiar with using grep. Any suggestions? (2 Replies)
Discussion started by: raidkridley
2 Replies
10. Shell Programming and Scripting
When I have a file like this:
0084AF aj-123-a NAME Ajay NAME Kumar Engineer
015ED6 ck-345-c
020B25 ef-456-e
027458 pq-890-p NAME Peter NAME Salob Doctor
0318F0 xy-123-x NAME Xavier Arul NAME Yesu Supervisor
0344CA de-456-d
where - The first NAME is followed by... (6 Replies)
Discussion started by: ajay41aj
6 Replies
VTYSH(1) Version 0.96.5 VTYSH(1)
NAME
vtysh - a integrated shell for Quagga routing software
SYNOPSIS
vtysh [ -b ]
vtysh [ -E ] [ -d daemon ] ] [ -c command ]
DESCRIPTION
vtysh is a integrated shell for Quagga routing engine.
OPTIONS
Options available for the vtysh command:
-b, --boot
Execute boot startup configuration. It makes sense only if integrated config file is in use (not default in Quagga). See Info file
Quagga for more info.
-c, --command command
Specify command to be executed under batch mode. It behaves like -c option in any other shell - command is executed and vtysh exits.
It's useful for gathering info from Quagga routing software or reconfiguring daemons from inside shell scripts, etc. Note that mul-
tiple commands may be executed by using more than one -c option and/or embedding linefeed characters inside the command string.
-d, --daemon daemon_name
Specify which daemon to connect to. By default, vtysh attempts to connect to all Quagga daemons running on the system. With this
flag, one can specify a single daemon to connect to instead. For example, specifying '-d ospfd' will connect only to ospfd. This
can be particularly useful inside scripts with -c where the command is targeted for a single daemon.
-e, --execute command
Alias for -c. It's here only for compatibility with Zebra routing software and older Quagga versions. This will be removed in
future.
-E, --echo
When the -c option is being used, this flag will cause the standard vtysh prompt and command to be echoed prior to displaying the
results. This is particularly useful to separate the results when executing multiple commands.
-h, --help
Display a usage message on standard output and exit.
ENVIRONMENT VARIABLES
VTYSH_PAGER
This should be the name of the pager to use. Default is more.
FILES
/usr/local/etc/vtysh.conf
The default location of the vtysh config file.
/usr/local/etc/Quagga.conf
The default location of the integrated Quagga routing engine config file if integrated config file is in use (not default).
WARNING
This man page is intended to be a quick reference for command line options. The definitive document is the Info file Quagga.
SEE ALSO
bgpd(8), ripd(8), ripngd(8), ospfd(8), ospf6d(8), isisd(8), zebra(8)
BUGS
vtysh eats bugs for breakfast. If you have food for the maintainers try http://bugzilla.quagga.net
AUTHORS
See http://www.zebra.org and http://www.quagga.net or the Info file for an accurate list of authors.
Quagga VTY shell 27 July 2006 VTYSH(1)