02-12-2008
what is the goal ?
must your number be min 4 digits ?
must your number be min and max 4 digits ?
there are several options
I prefer the following
subtract 999 from your number and check the result to see if this is bigger than 0 => this way you know your number is at leaset 1000
subtract 9999 from your number and check the result to see if this is lower than 1 => this wat you know your number is max 9999
vb:
[dummy920]@@ecar0o:/home/oracle> t=8
[dummy920]@@ecar0o:/home/oracle> ((a=$t-999))
[dummy920]@@ecar0o:/home/oracle> if (( $a > 0 ))
more>then
more>echo "min 4 digits"
more>else
more>echo "too small"
more>fi
too small
[dummy920]@@ecar0o:/home/oracle> t=10000
[dummy920]@@ecar0o:/home/oracle> ((a=$t-9999))
[dummy920]@@ecar0o:/home/oracle> if (( $a < 1 ))
more>then
more>echo "max 4 digits"
more>else
more>echo "too big"
more>fi
too big
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
hey guys- what is the syntax for a string test to verify that a user has entered a 6 digit numeric?
Thanks for your help in advance!
Todd (9 Replies)
Discussion started by: hedrict
9 Replies
2. Shell Programming and Scripting
Okay I will let users input spaces as well :)
I am having a mental block. I have done a couple of searches but havent found anything that I understand (the likes of :alpha: and awk).
Basically I want to give the user an option to enter some text which will go down as a field within a flat... (3 Replies)
Discussion started by: tugger
3 Replies
3. Shell Programming and Scripting
This is the code:
while test 1 -eq 1
do
read a
$a
if test $a = stop
then
break
fi
done
I read a command on every loop an execute it.
I check if the string equals the word stop to end the loop,but it say that I gave too many arguments to test.
For example echo hello.
Now the... (1 Reply)
Discussion started by: Max89
1 Replies
4. Shell Programming and Scripting
How to check weather a string is like test* or test* ot *test* in if condition (5 Replies)
Discussion started by: johnjerome
5 Replies
5. Shell Programming and Scripting
How do I test multiple words in a string test like below:
if ]
then
print "You entered $TBS name.\n"
else
print "You entered an incorrect response.\n"
fi
This test does not work. I have tried different syntax versions. How does this work? And is there a better way to do it?
... (10 Replies)
Discussion started by: djehresmann
10 Replies
6. Shell Programming and Scripting
Hi there, I have a bunch of interface names like
e1000g0
nge1
dmfe3
I also have some that have longer (vlan tagged) names
like
e1000g123001
nge23003
e1000g999002
I need to determine whether the interface is one of the former or latter types and I would do that by seeing... (7 Replies)
Discussion started by: rethink
7 Replies
7. Shell Programming and Scripting
How do I use bash to test whether a string occurs more than two times in a file? (2 Replies)
Discussion started by: locoroco
2 Replies
8. Shell Programming and Scripting
How do I use bash to test if a line begins with a random number of spaces followed by a letter? (1 Reply)
Discussion started by: locoroco
1 Replies
9. Shell Programming and Scripting
Hi guys
I am performing a simple test for a blank string with the following code:
if ] ]] ; then
echo "Blanks are NOT a valid input "
return 1
fi
The above fails giving a syntax error message:
syntax error at line 142 : `=~' unexpected
I am in ksh88
is there... (2 Replies)
Discussion started by: aoussenko
2 Replies
10. Shell Programming and Scripting
I want to find whether string values are available in a field of a file. Let it be any character other than number . I just want to know whether characters will be available in it . Please share a single step command for this without creating a shell script. (5 Replies)
Discussion started by: Sang
5 Replies
test(1) General Commands Manual test(1)
Name
test - test conditional expression
Syntax
test expr
[ expr ]
Description
The command evaluates the expression expr. If the value of expr is true, the command returns a zero exit status; otherwise, it returns a
nonzero exit status. The command also returns a nonzero exit status if no arguments are specified.
Options
The following primitives are used to construct expr:
-r file Tests if the file exists and is readable.
-w file Tests if the file exists and is writable.
-f file Tests if the file exists and is not a directory.
-d file Tests if the file exists and is a directory.
-s file Tests if the file exists and has a size greater than zero.
-t [ fildes ] Tests if the open file, whose file descriptor number is fildes (1 by default), is associated with a terminal device.
-z s1 Tests if the length of string s1 is zero.
-n s1 Tests if the length of the string s1 is nonzero.
s1 = s2 Tests if the strings s1 and s2 are equal.
s1 != s2 Tests if the strings s1 and s2 are not equal.
s1 Tests if s1 is not the null string.
n1 -eq n2 Tests if number1 equals number2.
n1 -ge n2 Tests if number1 is greater than or equal to number2.
n1 -gt n2 Tests if number1 is greater than number2.
n1 -le n2 Tests if number1 is less than or equal to number2.
n1 -lt n2 Tests if number1 is less than number2.
n1 -ne n2 Tests if number1 is not equal to number2.
These primitives can be combined with the following operators:
!expr Negates evaluation of expression.
expr -a expr Tests logical and of two expressions.
expr -o expr Tests logical or of two expressions.
( expr... ) Groups expressions.
The -a operator takes precedence over the -o operator. Note that all the operators and flags are separate arguments to Note also that
parentheses are meaningful to the Shell and must be escaped.
See Also
find(1), sh(1), test(1sh5)
test(1)