11-09-2010
Breaking a column's value into multiple rows
Hello Friends,
I am trying to implement the following using UNIX. I am getting a sequential file as input which would have two columns, "Name" and "Countries Visited". The "Countries Visisted" field will be multi-valued, each value separated by a space and also the number of values are not fixed. The file is tab delimited.
For example,
Name Countries Visited
A US UK CA
B US HT UG CA IN
C US
D CN PA
My intended output is this:
Name Countries Visited
A US
A UK
A CA
B US
B HT
B UG
B CA
B IN
C US
D CN
D PA
How can I use UNIX Shell Scripting to do this?
Many Thanks!!
regards
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
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
2. Shell Programming and Scripting
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
3. Shell Programming and Scripting
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
4. UNIX for Dummies Questions & Answers
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
5. Shell Programming and Scripting
Dear fellows, I need your help.
I'm trying to write a script to convert a single column into multiple rows.
But it need to recognize the beginning of the string and set it to its specific Column number.
Each Line (loop) begins with digit (RANGE).
At this moment it's kind of working, but it... (6 Replies)
Discussion started by: AK47
6 Replies
6. Shell Programming and Scripting
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
7. Shell Programming and Scripting
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
8. UNIX for Beginners Questions & Answers
Hello Everyone,
I am very new to the world of regular expressions. I am trying to use grep/sed for the following:
Input file is something like this and there are multiple such files:
abc
1
2
3
4
5
***END***
abc
6
7
8
9
***END***
abc
10 (2 Replies)
Discussion started by: shellnewuser
2 Replies
9. UNIX for Beginners Questions & Answers
I would like to compare values in column 8, and grep the ones where the different is > 1, columns 1 and 2 are the key for array.
Every 4 rows the records values in columns 1 and 2 changed. Then, the comparison in the column 8 need to be done for the 4 rows everytime columns 1 and 2 changed
... (4 Replies)
Discussion started by: jiam912
4 Replies
10. UNIX for Beginners Questions & Answers
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
CUT(1) BSD General Commands Manual CUT(1)
NAME
cut -- cut out selected portions of each line of a file
SYNOPSIS
cut -b list [-n] [file ...]
cut -c list [file ...]
cut -f list [-d delim] [-s] [file ...]
DESCRIPTION
The cut utility cuts out selected portions of each line (as specified by list) from each file and writes them to the standard output. If no
file arguments are specified, or a file argument is a single dash ('-'), cut reads from the standard input. The items specified by list can
be in terms of column position or in terms of fields delimited by a special character. Column numbering starts from 1.
The list option argument is a comma or whitespace separated set of numbers and/or number ranges. Number ranges consist of a number, a dash
('-'), and a second number and select the fields or columns from the first number to the second, inclusive. Numbers or number ranges may be
preceded by a dash, which selects all fields or columns from 1 to the last number. Numbers or number ranges may be followed by a dash, which
selects all fields or columns from the last number to the end of the line. Numbers and number ranges may be repeated, overlapping, and in
any order. If a field or column is specified multiple times, it will appear only once in the output. It is not an error to select fields or
columns not present in the input line.
The options are as follows:
-b list
The list specifies byte positions.
-c list
The list specifies character positions.
-d delim
Use delim as the field delimiter character instead of the tab character.
-f list
The list specifies fields, separated in the input by the field delimiter character (see the -d option.) Output fields are separated
by a single occurrence of the field delimiter character.
-n Do not split multi-byte characters. Characters will only be output if at least one byte is selected, and, after a prefix of zero or
more unselected bytes, the rest of the bytes that form the character are selected.
-s Suppress lines with no field delimiter characters. Unless specified, lines with no delimiters are passed through unmodified.
ENVIRONMENT
The LANG, LC_ALL and LC_CTYPE environment variables affect the execution of cut as described in environ(7).
EXIT STATUS
The cut utility exits 0 on success, and >0 if an error occurs.
EXAMPLES
Extract users' login names and shells from the system passwd(5) file as ``name:shell'' pairs:
cut -d : -f 1,7 /etc/passwd
Show the names and login times of the currently logged in users:
who | cut -c 1-16,26-38
SEE ALSO
colrm(1), paste(1)
STANDARDS
The cut utility conforms to IEEE Std 1003.2-1992 (``POSIX.2'').
HISTORY
A cut command appeared in AT&T System III UNIX.
BSD
December 21, 2006 BSD