05-07-2009
Using Subroutine / Function in case statement
I have issue running functions under case statement
#!/bin/bash
single() {
Commands
}
multiple() {
Commands
}
until ["$input"="$3"] ; do
echo -e " \t \t M A I N - M E N U Perforce delete script \n"
echo -e "1. Remove a single user \n"
echo -e "2. Remove List of Users from file \n"
echo -e "3. Exit \n"
echo -n "Please enter option [1 - 3]"
read input
case "$input" in
1) single
2) multiple
3) echo "Bye $USER";
exit 1;;
*) echo "$input is a invalid option Please enter option between [1 - 3] only";
echo "Press [enter] key to continue. . .";
read enterKey;;
esac
done
=================
I get :
./script.sh: line 68: syntax error near unexpected token `2)
./script.sh: line 68: `2) multiple'
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I want to write a program with the following variables:
a=7000
b=24000
c=613.8
The user can enter two words: Vivid or Blue for example. The challenge is that the user might not want to write the words the way they appear. The user can write V or v or vivid or Vivid or write Blue or blue, or B,... (1 Reply)
Discussion started by: Ernst
1 Replies
2. UNIX for Dummies Questions & Answers
Hi,
I am writing a bash shell script. My script has a few user defined parameters. When the script runs the first thing it does is make sure that these parameters are valid. One of the parameters is called YEAR. A valid input for YEAR can be 1997-2000.
One way I have come up with to ensure... (3 Replies)
Discussion started by: msb65
3 Replies
3. Shell Programming and Scripting
Hi All
I am new to perl so had one question.
I have one Subroutine which works as expected and below is just an example.
where I ran a command and check the output.
so my question is if I have more than one command then how to check the results, meaning I want to add more command and check... (2 Replies)
Discussion started by: tannu
2 Replies
4. Shell Programming and Scripting
Hi,
I am writing case statement to execute some finction, my requirement is once one of the case statement is executed again it has to prompt for the option.
for script in `echo "$Script_Selected"`
do
case $script in
1) getNoOFActUsers
;;
2) moveServerrOORotation
;;
... (2 Replies)
Discussion started by: Satyak
2 Replies
5. Shell Programming and Scripting
Hi,
I have the below script that should take the command line option and run the desired script on another server. Only it doesn't seem to run the function, infact it just returns back to the command line.
case $1 in
1) msgbacklog() ;;
2) jobstatus() ;;
... (10 Replies)
Discussion started by: chris01010
10 Replies
6. Shell Programming and Scripting
I've found a few posts regarding passing parameters to a function or subroutine, but for some reason when I try to run a command based on part with these parameters it's not working. If I have the function echo the parameters they show correctly so I believe they are being passed right but the... (2 Replies)
Discussion started by: withanh
2 Replies
7. Homework & Coursework Questions
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
Hey, guys I really need some help with a project.
"Write a shell program that examines the command line... (8 Replies)
Discussion started by: sk192010`
8 Replies
8. Shell Programming and Scripting
I'm in the process of writng a function that consists of a case statement is there a way of calling the function and passing a value to it?
ie
function1 () {
case
opt1 do .....
opt2 do.....
esac
}
function opt1
I'm aware the syntax is not correct, but you get the general idea. (1 Reply)
Discussion started by: squrcles
1 Replies
9. Shell Programming and Scripting
Hi All I am trying to convert some Fortran subroutine to awk function , those who know kindly explain how to define function in awk, and how to call function
Fortran subroutine looks somewhat like this
SUBROUTINE GDATE (JD, YEAR,MONTH,DAY)
C
C---COMPUTES THE GREGORIAN CALENDAR DATE... (5 Replies)
Discussion started by: Akshay Hegde
5 Replies
10. Shell Programming and Scripting
I have a fortran file with code declarations such as
Subroutine str_tnum_tu &
( &
s, dl, tu, pos &
)
!
Class (*), Intent (InOut) :: tu(:)
Character (Len=*), Intent (In) :: s, dl
Character (Len=*), Intent (In), Optional :: pos
...
or
... (11 Replies)
Discussion started by: kristinu
11 Replies
ECHO(3) 1 ECHO(3)
echo - Output one or more strings
SYNOPSIS
void echo (string $arg1, [string $...])
DESCRIPTION
Outputs all parameters.
echo is not actually a function (it is a language construct), so you are not required to use parentheses with it. echo (unlike some other
language constructs) does not behave like a function, so it cannot always be used in the context of a function. Additionally, if you want
to pass more than one parameter to echo, the parameters must not be enclosed within parentheses.
echo also has a shortcut syntax, where you can immediately follow the opening tag with an equals sign. Prior to PHP 5.4.0, this short syn-
tax only works with the short_open_tag configuration setting enabled.
I have <?=$foo?> foo.
PARAMETERS
o $arg1
- The parameter to output.
o $...
-
RETURN VALUES
No value is returned.
EXAMPLES
Example #1
echo examples
<?php
echo "Hello World";
echo "This spans
multiple lines. The newlines will be
output as well";
echo "This spans
multiple lines. The newlines will be
output as well.";
echo "Escaping characters is done "Like this".";
// You can use variables inside of an echo statement
$foo = "foobar";
$bar = "barbaz";
echo "foo is $foo"; // foo is foobar
// You can also use arrays
$baz = array("value" => "foo");
echo "this is {$baz['value']} !"; // this is foo !
// Using single quotes will print the variable name, not the value
echo 'foo is $foo'; // foo is $foo
// If you are not using any other characters, you can just echo variables
echo $foo; // foobar
echo $foo,$bar; // foobarbarbaz
// Some people prefer passing multiple parameters to echo over concatenation.
echo 'This ', 'string ', 'was ', 'made ', 'with multiple parameters.', chr(10);
echo 'This ' . 'string ' . 'was ' . 'made ' . 'with concatenation.' . "
";
echo <<<END
This uses the "here document" syntax to output
multiple lines with $variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
END;
// Because echo does not behave like a function, the following code is invalid.
($some_var) ? echo 'true' : echo 'false';
// However, the following examples will work:
($some_var) ? print 'true' : print 'false'; // print is also a construct, but
// it behaves like a function, so
// it may be used in this context.
echo $some_var ? 'true': 'false'; // changing the statement around
?>
NOTES
Note
Because this is a language construct and not a function, it cannot be called using variable functions.
SEE ALSO
print(3), printf(3), flush(3), Heredoc syntax.
PHP Documentation Group ECHO(3)