Problem with while loop in shell script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Problem with while loop in shell script
# 1  
Old 07-19-2006
Problem with while loop in shell script

Hi All,

How to read a file upto last line(End Of Line)
I wrote below program:

cat R2_20060719.610.txt | while read LINE
do
echo "$LINE"
done


above code reading all lines from a file and skipping last line......
is there anything wrong in my code.

Please help me out from this problem. it's little bit urgent.

Regards,
Ravi Kumar Garlapati
# 2  
Old 07-19-2006
Code:
cat R2_20060719.610.txt | while read LINE
do
echo "$LINE"
done

or preferably
Code:
while read LINE
do
echo "$LINE"
done <R2_20060719.610.txt

Will not skip the last line, it will in effect behave exactly like the cat command. There are a number of ways you could aciehve the desired results. The simplest of which is probably to store the value of LINE in another variable, and print that value in the next iteration through the while loop.
# 3  
Old 07-20-2006
Hi reborg,

thank you for quick reply,

below one is data file:

R2_20060719.610.txt
--------------------
Dividend EventID IssID SecID Created
DIV 170334 3085 3225 2006/06/10
DIV 7034 305 325 2006/06/10 2006/06/12
DIV 3333 30333 325 2006/06/10 2006/06/12

if i use ur code to loop this data

while read LINE
do
echo "$LINE"
done <R2_20060719.610.txt


i am getting output as

Dividend EventID IssID SecID Created
DIV 170334 3085 3225 2006/06/10
DIV 7034 305 325 2006/06/10 2006/06/12

it's skipping last line.

if i use below code

while read LINE
do
echo "$LINE"
done <R2_20060719.610.txt
echo "$LINE"


it's giving me all lines as output including last line.

but my requirement is not that....
within the loop itself i should be able to echo all lines including last line.
there should not be any code outside loop.

Hope this is clear.

Regards,
Ravi Kumar Garlapati
# 4  
Old 07-20-2006
Can you post the output of 'uname -n' and 'echo $0' commands? The code snippet posted by reborg should not be skipping any lines from the file at all...
# 5  
Old 07-20-2006
Hi blowtorch,

Below are the outputs of ur two commands:

uname -n --> ndafedt1
echo $0 --> -ksh

Regards,
Ravi Kumar Garlapati
# 6  
Old 07-20-2006
Oh, sorry, I meant 'uname -a'. Anyway, with ksh you shouldn't be getting such an output. All lines should be printed. Can you just run 'cat -v' on the file and see if any chars are present that shouldn't be there?
# 7  
Old 07-20-2006
Hi blowtorch,

uname -a output is SunOS ndafedt1 5.8 Generic_108528-15 sun4u sparc SUNW,Ultra-Enterprise

when i say cat -v <file name>
it's displaying all lines without any problem(without special or unwanted charecters), displying last line aswell.

again if i try to run below code :

while read LINE
do
echo "$LINE"
done <R2_20060719.610.txt


i am facing the same problem, i.e., skipping the last line.

Regards,
Ravi Kumar Garlapati
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Bourne Shell - Problem with while loop variable scope.

Hello I am having issues with a script I'm working on developing on a Solaris machine. The script is intended to find out how many times a particular user (by given userid) has logged into the local system for more than one hour today. Here is my while loop: last $user | grep -v 'sshd'... (7 Replies)
Discussion started by: DaveRich
7 Replies

2. UNIX for Dummies Questions & Answers

C shell loop problem occur

Hi all, i create 2 file Config path1 5 group1 path2 6 group2 path3 10 group1 path4 15 group2 Confine group1 andrew group2 alan In my C shell script i write like this: set line_array = (`cat $app_dir/config`) set line_array_2 =... (0 Replies)
Discussion started by: proghack
0 Replies

3. Shell Programming and Scripting

loop problem in c shell

Hi all, i got problem with this statement. I use 2 time loop while in 1 statement . But it excetu at second loop while. I want it continue loop until it stop when wrong. Plz help me -- #!/bin/csh set app_dir = "/ebsxe/ebs25/users/mmlim/assignment01" set line_array = (`cat... (0 Replies)
Discussion started by: proghack
0 Replies

4. Shell Programming and Scripting

while loop problem in c shell script

Hi all, i write a script c shell set i = 1 while ( $i <= $#array ) echo "$array" @ i++ end i want to set it to i = i +2 in that statement . Can anybody help me? ---------- Post updated at 02:46 PM ---------- Previous update was at 02:35 PM ---------- anybody not how to solve it??? (2 Replies)
Discussion started by: proghack
2 Replies

5. Shell Programming and Scripting

problem with while loop in BASH shell

I have file named script1 as follows: #!/bin/bash count="0" echo "hello" echo "$count" while do echo "$count" count=`expr $count + 1` done ----------- when I run it, I get ./script1: line 9: syntax error near unexpected token `done' ./script1: line 9: `done' I... (6 Replies)
Discussion started by: npatwardhan
6 Replies

6. Shell Programming and Scripting

problem in while loop in a script

i have a script that will read each line and then grep a particular pattern and do some_stuff. Below the script while read j do q1=0 q1=`$j | grep 'INFO - LPBatch:' | wc -l` if then $j | tr -s " " | cut -d " " -f8,42,43 >> nav1.txt fi q2=0 q2=`$j | grep 'INFO - Number of Intervals... (12 Replies)
Discussion started by: ali560045
12 Replies

7. Shell Programming and Scripting

if loop problem in bourne shell

how to use if-loop in bourne shell with multiple conditions like follows if then commands fi it gives me an error test: ] missing then i put if ] it gives me an error [[ not found kindly i need the syntex for the bourne shell (5 Replies)
Discussion started by: ahmad.diab
5 Replies

8. Solaris

Problem in for loop of shell scripting in solaris

Hi below is my script for((i=0;i<=$TOTAL;i++)) do echo "IP's created are $s1.$s2.$s3.$s4" s4=`expr $s4 + 1` done where s1,2,3,4 are input varibles below error occurs while running the script syntax error at lin 11: '(' unexpected ... (12 Replies)
Discussion started by: krevathi1912
12 Replies

9. Shell Programming and Scripting

for loop problem in K shell

I want to echo from 1 to 100 using a for loop. I was trying out all possible syntax using for loop, but it errors out. can you help me in doing this? I was using for i in 1..100 do echo $i done Regards Asutoshch (4 Replies)
Discussion started by: asutoshch
4 Replies

10. Shell Programming and Scripting

Shell Script loop problem

I am writing a shell script that simulates the `wc -w` command without actually using wc itself. My problem is that the script will only read the first line of the file and just keep looping through it. I have tried both while and for loops and got the same result. Can anyone help? ... (1 Reply)
Discussion started by: MaxMouse
1 Replies
Login or Register to Ask a Question