korn shell to bash - statement not working


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers korn shell to bash - statement not working
# 1  
Old 10-12-2007
korn shell to bash - statement not working

Everything else seems to be working, but this isn't. Is it the "cat..." that is wrong of the condition? Thanks.


cat tc_result.txt | while read LINE
do
if [ "$LINE" == "*File*" ]
then
let "files_run += 1";
echo "inside the if loop"
# save current filetype
case $LINE in
"Running Engine to produce ECF File") file_type="ECF";;
"Running Engine to produce AFP File") file_type="AFP";;
"Running Engine to produce PostScript File") file_type="PostScript";;
"Running Engine to produce Metacode File") file_type="Metacode";;
"Running Engine to produce PCL File") file_type="PCL";;
"Running Engine to produce PDF File") file_type="PDF";;
"Running Engine to produce PPML File") file_type="PPML";;
"Running Engine to produce VIPP File") file_type="VIPP";;
"Running Engine to produce RTF File") file_type="RTF";;
"Running Engine to produce 3211 File") file_type="3211";;
"Running Engine to produce VPS File") file_type="VPS";;
"Running Engine to produce HTML File") file_type="HTML";;
esac
else
# 2  
Old 10-12-2007
Hi.

How is it not working? ... cheers, drl
# 3  
Old 10-12-2007
It's not getting into that loop. I've tested and the tc_result file is created correctly and so there are lines that have File in them. However, the counters are not increased and I don't hit my statement saying I'm in the loop.
# 4  
Old 10-12-2007
Code:
bash 3.2.25(16)$ [ "File" == "*File*" ]&&echo OK||echo KO
KO
bash 3.2.25(16)$ [[ "File" == "*File*" ]]&&echo OK||echo KO
KO
bash 3.2.25(16)$ [[ "File" == *File* ]]&&echo OK||echo KO
OK

HTH

P.S. And you don't need cat ...
# 5  
Old 10-12-2007
Hi.

Or, in the words of the man bash page:
Quote:
When the == and != operators are used, the string to the right
of the operator is considered a pattern and matched according to
the rules described below under Pattern Matching. The return
value is 0 if the string matches or does not match the pattern,
respectively, and 1 otherwise. Any part of the pattern may be
quoted to force it to be matched as a string
.
Best wishes ... cheers, drl
# 6  
Old 10-15-2007
Thank you. I did not see this in the reference material I reviewed.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

While within while is not working in Korn shell

Hi all, I tried to execute a while within another while, but not working. Any suggestions? Thanks in advance #!/bin/ksh typeset -i i=1 typeset -i j=1 while ] do while ] do print i = $i j= $j (( j=j+1 )) done (( i=i+1)) done (3 Replies)
Discussion started by: Soham
3 Replies

2. Shell Programming and Scripting

Bash read input in case statement not working as expected

I'm having an issue with bash read input when using a case statement. The script halts and doesn't read the input on the first loop. if I hit enter then the scripts starts to respond as expected. Need some help here. defaultans=8hrs read -e -i $defaultans -p "${bldwht}How long would you like... (5 Replies)
Discussion started by: woodson2
5 Replies

3. Shell Programming and Scripting

UNIX Korn Shell to Linux Bash

Migrating Unix batch jobs (Korn Shell) running in HP-UX server to Linux environment. Hi All Please help me to understand the easiest way to migrate Kernel Shell scripts to Linux Bash. Also let me know 1. Any automated scripts or tools available for this. 2. Challenges and issues... (5 Replies)
Discussion started by: cpremesh
5 Replies

4. Shell Programming and Scripting

Typeset is not working in Linux korn shell scripting

Hi All, Kindly help on the below issue ASAP. Its very urgent. I have script in which we have below two lines for code and it is not working. Please help. files_to_process=" abc_*.log def_*.log ghi_*.log " typeset -A dir_list ${files_to_process} the script is failing in Linux... (3 Replies)
Discussion started by: tvbhkishore
3 Replies

5. Shell Programming and Scripting

Korn shell script - SQL statement challenges

Hi scripting experts. I have some coding challenges that I'm hoping you can help me out. I have one file#1 that contains the following sql statement that spans over multiple lines: sql Select /*+ use_has(a,b) */ * from customer a, customer_address b where a.id = b.id... (1 Reply)
Discussion started by: pchang
1 Replies

6. UNIX for Dummies Questions & Answers

BASH Shell Scripting: If, Then Statement

I'm having trouble trying to create a BASH shell script. I want the user to input a command "cat file_name.c" and then the shell script will delete all comments "/* */" from file_name.c else exit. So far I have this: #!/bin/bash read "cat file" // User will input command cat... (7 Replies)
Discussion started by: inkjoy00
7 Replies

7. Shell Programming and Scripting

Pass values to case statement in a function korn shell

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

8. Shell Programming and Scripting

Difficulty with a couple commands porting from korn shell to bash

I am relatively new to shell scripting. I have a script I wrote that works fine in korn shell. I need to make it work in bash on a different server. There are a couple valid korn shell commands I am having difficulty finding the bash equivalents for. At one point the scripts prompts the... (5 Replies)
Discussion started by: inakajin
5 Replies

9. Shell Programming and Scripting

MKS Korn shell not working when schedule

Hi I have a sample MKS Korn Shell script, it is working fine when I am executing manually (i.e command prompt) but not when schedule through scheduler. here is the script, ls command working just fine manual run, so I thought it could be environment varilable so kept same PATH when running... (1 Reply)
Discussion started by: rkthoka
1 Replies

10. Shell Programming and Scripting

if loop not working in BASH shell

i have this code for a simple if loop: #!/bin/bash array="1 2 3 4 5" array2="5 6 7 8 9" if } -gt ${array} ]; then echo "${array2} is greater than ${array}!!" fi the error is ./script8: line 9: [: too many arguments ./script8: line 9: [: too many arguments ./script8: line 9: [:... (10 Replies)
Discussion started by: npatwardhan
10 Replies
Login or Register to Ask a Question