TO break a line


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting TO break a line
# 1  
Old 08-28-2007
TO break a line

hi All,
Have a doubt in ksh..Am not familiar with arrays but i have tried out a script..
plzzzzz correct me with the script

My i/p File is:

(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(Host = 192.168.2.2)
(Port = 1525)
)
)
(CONNECT_DATA = (SID = TESTDB1)
)
)


(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(Host = 192.168.2.4)
(Port = 1525)
)
)
(CONNECT_DATA = (SID = TESTDB2)



And My script is:


while read line
do
i=0

a[$i]=`grep "Host" |cut -d" " -f3 |tr -d ')'`
echo ${a[$i]}
i=`expr $i + 1`
done < File Name




Am trying to get the value of host and assign it to an array


My O/p is


192.168.2.2 192.168.2.4


But i need the o/p to be:

a[0]=192.168.2.2

a[1]=192.168.2.4
# 2  
Old 08-28-2007
Code:
awk -F" = " '/Host/ { arr[i++] = substr($2, 0, length($2) - 1) }END{ for ( i in arr ) { print i, arr[i] } }' filename

# 3  
Old 08-28-2007
change the echo statement to

Code:
echo "${a[$i]} \n"

# 4  
Old 08-28-2007
Thank Matrix!!!!!!!!!!

But how to store the value in an array

Like

Host[0]=192.168.2.2
Host[1]=192.168.2.4
# 5  
Old 08-28-2007
its already in the array named 'arr'

thats what I have printed in the END block of awk.

Are you looking for displaying it in the format posted ?
# 6  
Old 08-28-2007
Yes Am looking for the Format which i have given in the o/p
# 7  
Old 08-28-2007
With zsh:

Code:
zsh 4.3.4 % host=(${$(grep -F Host file)//[^0-9.]/})
zsh 4.3.4 % print $host[1]
192.168.2.2
zsh 4.3.4 % print $host[2]
192.168.2.4

With bash:

Code:
bash 3.2.13(1) $ while read;do 
> [[ "$REPLY" == *Host* ]]&&host=($host ${REPLY//[^0-9.]/})
> done<file
bash 3.2.13(1) $ echo ${host[0]}
192.168.2.2
bash 3.2.13(1) $ echo ${host[1]}
192.168.2.4

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to break the line to the one above?

Hello everyone! I'm trying to make the below file1 look like file2, can anyone help? Basically I just hit backspace on every line that starts with a number. Thanks! file1: THIS#IS-IT1 4 THIS#IS-IT2 3 THIS#IS-IT3 2 THIS#IS-IT4 1 Result > file2: (4 Replies)
Discussion started by: demmel
4 Replies

2. UNIX for Dummies Questions & Answers

VI Line Break?

So I'm in a Unix class and our assignment was to go into VI and write a script to make this file tree. At the end of it, I'd like it to echo "This is the file tree you've created" then a line break, then . But I'm not sure as to who to do it. Is there a way for when I run it (./filesystem), the... (4 Replies)
Discussion started by: bbowers
4 Replies

3. Shell Programming and Scripting

Break single line in 4

How can i break a single line into 5 lines # joseluiz.silvano; Ramal4846; Sala4121; SetorCorregedoria host DF04488962 { hardware ethernet 00:16:41:68:57:0B; fixed-address 10.100.111.245; } INTO # joseluiz.silvano; Ramal4846; Sala4121; SetorCorregedoria host DF04488962 {... (5 Replies)
Discussion started by: danielldf
5 Replies

4. Shell Programming and Scripting

Multiple line break

Hi, We had an issue with one file. Each line in the file is a record in which there will be 6 fields each separated by ; Problem is some lines are broken into pieces. like a;b; c; d; e;f instead of a;b;c;d;e;f I have filtered out all the broken lines from the original file and wrote to... (6 Replies)
Discussion started by: anjuvr
6 Replies

5. Shell Programming and Scripting

sed with line break

<td> CIS </td>and I tried to sed 's/<td>\/nCIS\/n<\/td>/<td><\/td>' and sed 's/<td>\/rCIS\/r<\/td>/<td><\/td>' , but no joy. This is an html page that I need to clean. (4 Replies)
Discussion started by: dba_frog
4 Replies

6. Shell Programming and Scripting

Add line break for each line in a file

I cannot seem to get this to work.. I have a file which has about 100 lines, and there is no end of line (line break \n) at the end of each line, and this is causing problem when i paste them into an application. the file looks like this this is a test that is a test balblblablblhblbha... (1 Reply)
Discussion started by: fedora
1 Replies

7. Shell Programming and Scripting

BASH: Break line, read, break again, read again...

...when the lines use both a colon and commas to separate the parts you want read as information. The first version of this script used cut and other non-Bash-builtins, frequently, which made it nice and zippy with little more than average processor load in GNOME Terminal but, predictably, slow... (2 Replies)
Discussion started by: SilversleevesX
2 Replies

8. Shell Programming and Scripting

Help to remove line break

My requirement is to read the csv file and need to remove if any line break in it. sample data: Row1: "Oslo, Symra kino",Oslo,130-7,Symra 1,130-7-91Row2:"Tønsberg, Brygga Kino SF",Tønsberg,202-1.Tønsberg SF 4,202-1-4 Expected data: Row1: "Oslo, Symra kino",Oslo,130-7,Symra... (4 Replies)
Discussion started by: cnraja
4 Replies

9. Shell Programming and Scripting

Insert line break

Dear All, thanks in advance input file 410530AAANNNNNAAA410530JJJJJJYYYY410530PPPPPAAAAAA........... I want output like 410530AAANNNNNAAA 410530JJJJJJYYYY 410530PPPPPAAAAAA Thanks (10 Replies)
Discussion started by: The_Archer
10 Replies

10. UNIX for Dummies Questions & Answers

Inserting line break where ';' is

I did some past data manipulations using awk so I could join lines in order to use grep. Now that I have newly searched data I need to insert a new line break to use further statistical packages. I have a data base that looks something like this: ... (3 Replies)
Discussion started by: kkohl78
3 Replies
Login or Register to Ask a Question