Sponsored Content
Top Forums Shell Programming and Scripting Check if parameter passes in contains certain string Post 62233 by jim mcnamara on Monday 14th of February 2005 11:07:25 AM
Old 02-14-2005
The shell also supports different kinds of string operators. The most nearly universal one is expr - in this case expr index

Try man expr.
Code:
let is_there=0
check ()
{
  if [ $is_there -gt 0 ] ; then
     echo "$str has a WA in it"
  else
     echo "$str has no WA in it"
  fi     	
}

str="/someplace/WA/01/"
is_there=`expr index $str "WA"`
check;

Test whether expr return zero or a non-zero result.
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to check parameter variable?

Hello All, I have a script that will email out if the email address is specified as parameter 1. I am using ksh, and then tried the following : email=$1 Following did not work, I am getting error test -z $email test ${email:=" ") -eq " " test -n $email test ${?email} What... (4 Replies)
Discussion started by: negixx
4 Replies

2. Shell Programming and Scripting

Help with making a parameter check script.

I am making a script to check the parameters, but it seems that I can't catch the parameters by loop. $ cat sendmsg.sh #!/bin/sh ## Parameter Check i=0 max=$# while do PARAM=$${i} i=`expr ${i} + 1` echo ${PARAM} done How can I get the $1, $2, $3 by loop and set their... (2 Replies)
Discussion started by: GCTEII
2 Replies

3. Shell Programming and Scripting

Passing a string parameter to a function

I need to pass a parameter to a function in a script. My parameter is a string. When I display the parameter within my function, I only get the first word from string I pass in. How can I make the function receive the whole string (and not terminate at the first space it encounters)?. part of... (1 Reply)
Discussion started by: fastgoon
1 Replies

4. AIX

find {start} -ls - Two Passes?

I have a "find {start} -ls" command listing all files and dirs in on the whole filesystem. As part of this it lists locations that contain temporary files and, sometimes when executing, it identifies a file but produces an ERROR when trying to list it. ERROR thrown: find: bad status--... (2 Replies)
Discussion started by: apiggott
2 Replies

5. Shell Programming and Scripting

How to compare a parameter to a string

Hi, I have a parameter which is a string: set parameter = "string" I would like to compare it to various strings inside an IF conditional: if ($parameter == "string") then bla bla bla endif but it doesn't work, and I have no idea why. Thanks in advance, Shira. :) (12 Replies)
Discussion started by: shira
12 Replies

6. UNIX for Advanced & Expert Users

How to check what are the current kernel parameter settings

Hi all, I have four (4) different UNIX flavours and I want to know whether the following commands are correct with respect to wanting to check on what are my current kernel parameter settings. I just want to clear the doubts hanging over my head whether the commands below are the right ones... (2 Replies)
Discussion started by: newbie_01
2 Replies

7. Shell Programming and Scripting

Check input parameter

Hi all i need to check that if user has passed any input parameter while executing he shell script like ./test1.sh -a"-v" then do smothing if user execute the script without giving input paramater then ./test1.sh then do something how can we check this input parameter (6 Replies)
Discussion started by: aishsimplesweet
6 Replies

8. Shell Programming and Scripting

Check parameter is number or string

Hey I'm new in linux, I'm looking for a code to check whether the parameter is a number or a string. I have already tried this code: eerste=$(echo $1 | grep "^*$">aux) if But it doesn't work.:confused: Thanks (2 Replies)
Discussion started by: Eclecticaa
2 Replies

9. Shell Programming and Scripting

Duplicate check by passing external parameter

I have a code which is using to find duplicates in a files based on column.Below is the same code which is used to find duplicates in my file based on column 1 awk -F'|' '{if (x) { x_count++; print $0; if (x_count == 1) { print x } } x = $0}' FileName >Dup_File.txt But my requirement here is... (3 Replies)
Discussion started by: ginrkf
3 Replies
TEST(1) 						      General Commands Manual							   TEST(1)

NAME
test - set status according to condition SYNOPSIS
test expr DESCRIPTION
Test evaluates the expression expr. If the value is true the exit status is null; otherwise the exit status is non-null. If there are no arguments the exit status is non-null. The following primitives are used to construct expr. -r file True if the file exists (is accessible) and is readable. -w file True if the file exists and is writable. -x file True if the file exists and has execute permission. -e file True if the file exists. -f file True if the file exists and is a plain file. -d file True if the file exists and is a directory. -s file True if the file exists and has a size greater than zero. -t fildes True if the open file whose file descriptor number is fildes (1 by default) is the same file as /dev/cons. s1 = s2 True if the strings s1 and s2 are identical. s1 != s2 True if the strings s1 and s2 are not identical. s1 True if s1 is not the null string. (Deprecated.) -n s1 True if the length of string s1 is non-zero. -z s1 True if the length of string s1 is zero. n1 -eq n2 True if the integers n1 and n2 are arithmetically equal. Any of the comparisons -ne, -gt, -ge, -lt, or -le may be used in place of -eq. The (nonstandard) construct -l string, meaning the length of string, may be used in place of an integer. These primaries may be combined with the following operators: ! unary negation operator -o binary or operator -a binary and operator; higher precedence than -o ( expr ) parentheses for grouping. The primitives -b, -u, -g, and -s return false; they are recognized for compatibility with POSIX. Notice that all the operators and flags are separate arguments to test. Notice also that parentheses and equal signs are meaningful to rc and must be enclosed in quotes. EXAMPLES
Test is a dubious way to check for specific character strings: it uses a process to do what an rc(1) match or switch statement can do. The first example is not only inefficient but wrong, because test understands the purported string "-c" as an option. if (test $1 '=' "-c") echo OK # wrong! A better way is if (~ $1 -c) echo OK Test whether is in the current directory. test -f abc -o -d abc SOURCE
/sys/src/cmd/test.c SEE ALSO
rc(1) TEST(1)
All times are GMT -4. The time now is 06:24 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy