Visit Our UNIX and Linux User Community


Reading a file one line at a time


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Reading a file one line at a time
# 1  
Old 07-24-2002
Data Reading a file one line at a time

I have a file that I want to read each record, do some stuff and write a new file.
I get as far as:

file=`cat data.txt`
for data in "$file"
do
echo "Record is: $data"
done

The output of this is not what I was expecting:

Record is: This is record one
This is record two
This is record three
and so on....

I want to see:
Record is: This is record one
Record is: This is record two
Record is: This is record three

I've been away from coding for awhile and am alittle rusty. I think I must be missing a newline somewhere.....

Thanks,

Sincerely braindead!
app4dxh
# 2  
Old 07-24-2002
# 3  
Old 07-24-2002
Just change your script to this:

for data in `cat data.txt`
do
echo "Record is: $data"
done

What you were doing was catting the whole file to the variable 'file'.... then the for loop only had one condition (there's only one $file), if you cat the file as part of the for loop criteria as I've done above you'll get your line by line behaviour as requested.
# 4  
Old 07-25-2002
You can do like this:

cat data.txt | while read F
do
echo "Record Is : "$F;
done;

Inside while your F is your string.
# 5  
Old 07-25-2002
Thanks to all.....

I now have a couple different ways of going about it.
app4dxh
 

Previous Thread | Next Thread
Test Your Knowledge in Computers #193
Difficulty: Easy
Python was selected the Programming Language of the Year in 2007, 2010, and 2018.
True or False?

9 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Reading a file line by line and print required lines based on pattern

Hi All, i want to write a shell script read below file line by line and want to exclude the lines which contains empty value for MOUNTPOINT field. i am using centos 7 Operating system. want to read below file. # cat /tmp/d5 NAME="/dev/sda" TYPE="disk" SIZE="60G" OWNER="root"... (4 Replies)
Discussion started by: balu1234
4 Replies

2. Shell Programming and Scripting

Reading line by line from live log file using while loop and considering only those lines start from

Hi, I want to read a live log file line by line and considering those line which start from time stamp; Below code I am using, which read line but throws an exception when comparing line that does not contain error code tail -F /logs/COMMON-ERROR.log | while read myline; do... (2 Replies)
Discussion started by: ketanraut
2 Replies

3. Shell Programming and Scripting

Comparison of fields then increment a counter reading line by line in a file

Hi, i have a scenario were i should compare a few fields from each line then increment a variable based on that. Example file 989878|8999|Y|0|Y|N|V 989878|8999|Y|0|N|N|V 989878|8999|Y|2344|Y|N|V i have 3 conditions to check and increment a variable on every line condition 1 if ( $3... (4 Replies)
Discussion started by: selvankj
4 Replies

4. Shell Programming and Scripting

Reading text file, comparing a value in a line, and placing only part of the line in a variable?

I need some help. I would like to read in a text file. Take a variable such as ROW-D-01, compare it to what's in one line in the text file such as PROD/VM/ROW-D-01 and only input PROD/VM into a variable without the /ROW-D-01. Is this possible? any help is appreciated. (2 Replies)
Discussion started by: xChristopher
2 Replies

5. Shell Programming and Scripting

How to start reading from the nth line till the last line of a file.

Hi, For my reuirement, I have to read a file from the 2nd line till the last line<EOF>. Say, I have a file as test.txt, which as a header record in the first line followed by records in rest of the lines. for i in `cat test.txt` { echo $i } While doing the above loop, I have read... (5 Replies)
Discussion started by: machomaddy
5 Replies

6. UNIX for Dummies Questions & Answers

Parsing file, reading each line to variable, evaluating date/time stamp of each line

So, the beginning of my script will cat & grep a file with the output directed to a new file. The data I have in this file needs to be parsed, read and evaluated. Basically, I need to identify the latest date/time stamp and then calculate whether or not it is within 15 minutes of the current... (1 Reply)
Discussion started by: hynesward
1 Replies

7. Shell Programming and Scripting

[Solved] Problem in reading a file line by line till it reaches a white line

So, I want to read line-by-line a text file with unknown number of files.... So: a=1 b=1 while ; do b=`sed -n '$ap' test` a=`expr $a + 1` $here do something with b etc done the problem is that sed does not seem to recognise the $a, even when trying sed -n ' $a p' So, I cannot read... (3 Replies)
Discussion started by: hakermania
3 Replies

8. Shell Programming and Scripting

reading a file inside awk and processing line by line

Hi Sorry to multipost. I am opening the new thread because the earlier threads head was misleading to my current doubt. and i am stuck. list=`cat /u/Test/programs`; psg "ServTest" | awk -v listawk=$list '{ cmd_name=($5 ~ /^/)? $9:$8 for(pgmname in listawk) ... (6 Replies)
Discussion started by: Anteus
6 Replies

9. Shell Programming and Scripting

Reading one line at a time

Hi All, I'm trying to write an script where I'll be processing all the lines of an input file but one line at a time and produce a written output for each processed line. Where I'm having problems is preparing the loop where I check a the first line of the input file cut some bytes out of the... (4 Replies)
Discussion started by: danielsf
4 Replies

Featured Tech Videos