Split single rows to multiple rows ..


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Split single rows to multiple rows ..
# 1  
Old 01-23-2011
Split single rows to multiple rows ..

Hi pls help me out to short out this problem


rm PAB113_011.out
rm: PAB113_011.out: override protection 644 (yes/no)? n

If i give y it remove the file.

But i added the rm command as a part of ksh file and i tried to remove the file. Its not removing and the the file prompting as below

joly!edwopr(Dv03) /apps/edw/Direct_DW/Dv03/output
==> ksh test.ksh
hi
rm: /apps/edw/Direct_DW/Dv03/output/ is a directory
rm: PAB113_011.out: override protection 644 (yes/no)?


is there anyway to give 'yes' in the script level itself.

Last edited by sri_aue; 01-28-2011 at 10:03 AM.. Reason: Please use code tags
# 2  
Old 01-23-2011
Hi,

in bash, you'll adapt if needed to KSH:
Code:
while IFS='|' read -r -a array; do printf '%s\n' "${array[@]}"; done < yourSample
aaaaa 
erereer<5spaces>ooo
tteererer<4spaces>ooooo
rrererere<6SPACES>oo<6SPACES>oo<6SPACES>oo<6SPACES>oo<6SPACES>oo
eeee

Code:
tr '|' $'\n' < yourSample

same output
# 3  
Old 01-23-2011
Code:
tr '|' '\n' < infile > outfile

# 4  
Old 01-23-2011
echo $line | tr '|' '\n' >> $2

Hi I am already using this in my code. My problem is get the same spaces as in the input file.

please replace the <6spaces> with spaces when trying the code and let me know the solution ,..

Waiting for ur response
# 5  
Old 01-23-2011
your problem is that you don't quote $line.
Use More Quotes!
# 6  
Old 01-23-2011
Maybe this would also work for you:
Quote:
egrep -o '[^|]+' infile > outfile
(or use grep -Eo ... instead of egrep)
The grep basically says just print the matched pattern, which is anything but a pipe symbol ("[^|]", repeated more than one time, "+".

Last edited by grepeverything; 01-23-2011 at 09:14 AM..
# 7  
Old 01-23-2011
Quote:
Originally Posted by sri_aue
echo $line | tr '|' '\n' >> $2

Hi I am already using this in my code. My problem is get the same spaces as in the input file.

please replace the <6spaces> with spaces when trying the code and let me know the solution ,..

Waiting for ur response
Don't use a loop, this is sufficient:
Code:
#!/bin/ksh

tr '|' '\n' < $1 > $2

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

How to split one long column into multiple rows with 3 each ?

I have a large csv dataset like this : A value1 A value2 A value3 B value1 B value2 B value3 C value1 C value2 C value3 what I expected output is :A value1 value2 value3 B value1 value2 value3 C value1 value2 value3 I'm thinking of use like awk, columns , but haven't find a proper... (4 Replies)
Discussion started by: nengcheng
4 Replies

2. Shell Programming and Scripting

Converting Single Column into Multiple rows

Hi .. anyone can you help me ? i need to convert text below into multiple columns interface; GigabitEthernet0/0/0/0 description; TRUNK_PE-D2-JT2-VPN_Gi0/0/0/0_TO_ME4-A-JKT-JT_4/1/1_1G mtu 9212 negotiation auto interface; GigabitEthernet0/0/0/0.11 description; tes encapsulation;... (1 Reply)
Discussion started by: mad3linux
1 Replies

3. Shell Programming and Scripting

Converting a single row to multiple rows

Hi, I want to convert a single row values to multiple rows, but the no. of rows are not fixed. For example, I have a row as below abc-def-lmn-mno-xyz out put should be get abc get def get lmn get xyz (4 Replies)
Discussion started by: Suneel Mekala
4 Replies

4. Shell Programming and Scripting

Convert single column into multiple rows

Convert Single column to multiple rows file a.txt contains data like below Server=abc Run=1 Tables=10 Sessions=16 Time=380 Jobs=5 Server=abc Run=2 Tables=15 Sessions=16 Time=400 Jobs=5 Server=abc Run=3 Tables=20 Sessions=16 Time=450 (5 Replies)
Discussion started by: sol_nov
5 Replies

5. Shell Programming and Scripting

Transpose multiple rows (with a mix of space and enter) to a single column

How to change the uploaded weekly file data to the following format? New Well_Id,Old Well_Id,District,Thana,Date,Data,R.L,WellType,Lati.,Longi. BAG001,PT006,BARGUNA,AMTALI,1/2/1978,1.81,2.29,Piezometer,220825,901430 BAG001,PT006,BARGUNA,AMTALI,1/9/1978,1.87,2.29,Piezometer,220825,901430... (3 Replies)
Discussion started by: sara.nowreen
3 Replies

6. UNIX for Dummies Questions & Answers

[SOLVED] splitting a single column(with spaces) into multiple rows

Hi All, My requisite is to split a single column of phonemes seperated by spaces into multiple rows. my input file is: a dh u th a qn ch A v U r k my o/p should be like: adhu a dh u (3 Replies)
Discussion started by: girlofgenuine
3 Replies

7. Shell Programming and Scripting

How to merge multiple rows into single row if first column matches ?

Hi, Can anyone suggest quick way to get desired output? Sample input file content: A 12 9 A -0.3 2.3 B 1.0 -4 C 34 1000 C -111 900 C 99 0.09 Output required: A 12 9 -0.3 2.3 B 1.0 -4 C 34 1000 -111 900 99 0.09 Thanks (3 Replies)
Discussion started by: cbm_000
3 Replies

8. Shell Programming and Scripting

Converting Multiple rows to Single Row using unix commands

Can somebody help me in solving this.. Input data is like 0 A 1 B 2 C 3 D 0 A1 1 B1 2 C1 3 D1 0 A2 1 B2 2 C2 3 D2 Output should be like A B C D A1 B1 C1 D1 A2 B2 C2 D2 (7 Replies)
Discussion started by: Mahantesh Patil
7 Replies

9. Shell Programming and Scripting

Single column into multiple rows

Hi all, I need to convert this file having just one column into two column file current file: a 15 b 21 c 34 d 48 e 10 wanted: a 15 b 21 c 34 (15 Replies)
Discussion started by: prachiagra
15 Replies

10. Shell Programming and Scripting

Converting Single Column into Multiple rows

i have single column which is starting with same string(many number of rows) i have to convert each into a single row.how can i do that? laknar std mes 23 55 laknar isd phone no address amount 99 I have to convert above like below. laknar|std|mes|23|55 laknar|isd|phone... (3 Replies)
Discussion started by: laknar
3 Replies
Login or Register to Ask a Question