01-22-2012
They advise not to use them, but the specification also says they have been marked obsolescent and that script should be converted:
Quote:
The XSI extensions specifying the -a and -o binary primaries and the '(' and ')' operators have been marked obsolescent. (Many expressions using them are ambiguously defined by the grammar depending on the specific expressions being evaluated.) Scripts using these expressions should be converted to the forms given below. Even though many implementations will continue to support these obsolescent forms, scripts should be extremely careful when dealing with user-supplied input that could be confused with these and other primaries and operators. Unless the application developer knows all the cases that produce input to the script, invocations like:
test "$1" -a "$2"
should be written as:
test "$1" && test "$2"
test
This User Gave Thanks to Scrutinizer For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
Actually i have written one test.sh (shell program) in bash.
Here i have a variables $a which stored the value package1.
Now I want to write a regular expression inside the if command that "if $a variable contains letter p in the begining of the value package1 then it is coming true.... (5 Replies)
Discussion started by: sunitachoudhury
5 Replies
2. Shell Programming and Scripting
I'm pretty sure I already know the answer to this, but I want to make sure I'm not overlooking anything. I'm working on a log monitoring script and every 10 lines I want to display a summary of events. The thing is, there are a lot of possible events, that likely won't have happened, so I only want... (0 Replies)
Discussion started by: DeCoTwc
0 Replies
3. Shell Programming and Scripting
hi,
I have written a script to search MAC address in a given directory.
MAC address would be in format XX.XX.XX.XX.
The digits contain hexadecimal numbers.
For this i have used grep as follows.
grep -rn '^\{1,2\}\.\{1,2\}\.\{1,2\}\.\{1,2\}\$' *
This is not working as required.... (17 Replies)
Discussion started by: flamingo_l
17 Replies
4. Shell Programming and Scripting
Just started learning bash ,and I am confused with sintaksis
line 16: syntax error near unexpected token `else'
thanks
#!/bin/bash
echo -n "Enter: "
read num
if(($(echo ${#num}) == 0 ))
then
echo No arguments passed.Try again
elif
rem=$(echo $num | tr -d )
... (7 Replies)
Discussion started by: lio123
7 Replies
5. Shell Programming and Scripting
Hi,
How to use values in one for loop to other for loop.
say "$sf_rel" variable has values "2011/W2 2011/G2" I want to use these values in inner for loop to process properly.
$branch variable has G2 and 6
What is happening is outer for loop $i has 2011/W2 it is entering into inner... (3 Replies)
Discussion started by: Anjan1
3 Replies
6. Shell Programming and Scripting
I'm would to create a script that would give me the results below.
Please note the spaces in the log file are actually commas(",".)
Log file Data
0:00 21:15 899 43 31 12 25.39
0:00 21:20 736 34 19 15 35.39
0:00 21:20 776 41 28 13 ... (3 Replies)
Discussion started by: ravzter
3 Replies
7. Shell Programming and Scripting
Hi,
i want to check if a variable var1 is not a or b or c
pseudo code:
If NOT (var1 = a or var1 = b or var1 = c)
then
...
fi
I want to use POSIX complaint Korn shell, and for string comparison
For the following code, logical.sh
#!/usr/bin/ksh
var="j"
echo "Var : $var"
if ! { || ||... (12 Replies)
Discussion started by: ysrini
12 Replies
8. UNIX for Dummies Questions & Answers
# check host value regex='^(||1|2|25)(\.(||1|2|25)){3}$' if ')" != "" ]; then if ]; then echo host $host not found exit 4 fi elif ]; then echo $host is an invalid host address exit 5 fi
espeacailly the top regex part?
---------- Post updated at 06:58 PM ---------- Previous update was... (1 Reply)
Discussion started by: kevin298
1 Replies
9. Shell Programming and Scripting
Folks - newbie bash coder here and I'd like to get your help to make the code below work. As you can see, I was trying to count the total number of lines with the 3rd value >= 15 in a file and wanted to make the threshold "15" configurable, but apparently the $THRESHOLD value was not populated... (3 Replies)
Discussion started by: bashzipper
3 Replies
10. UNIX for Dummies Questions & Answers
I am using the following nested loop
for i in {1..3}
do
for y in {1..3}
do
if ;
then
echo P0${i}R${y}.fas
mv P0${i}R${y}.fas P${i}R${y}.fas
read -t 5
fi
done
done
I was wondering if I can use a character such as * or ? instead of my second variable y. I tried R in... (3 Replies)
Discussion started by: Xterra
3 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)