Skip to main content
Fix off by 1 error
Source Link
Stephen Rauch
  • 4.3k
  • 15
  • 24
  • 33

One way to do that in awk would be like:

###Code:

$ awk '{ for (i=4; i <<= NF; i++) print $1, $2, $3, $i }' file1 

###file1:

10000001 ABC $5.00 ABC01 ABC001 ABC1
10000002 BCD $2.34 BCD01 BCD.go BD.c.2 BDDCD7

###Results:

10000001 ABC $5.00 ABC01
10000001 ABC $5.00 ABC001
10000001 ABC $5.00 ABC1
10000002 BCD $2.34 BCD01
10000002 BCD $2.34 BCD.go
10000002 BCD $2.34 BD.c.2
10000002 BCD $2.34 BDDCD7

One way to do that in awk would be like:

###Code:

$ awk '{ for (i=4; i < NF; i++) print $1, $2, $3, $i }' file1 

###file1:

10000001 ABC $5.00 ABC01 ABC001 ABC1
10000002 BCD $2.34 BCD01 BCD.go BD.c.2 BDDCD7

###Results:

10000001 ABC $5.00 ABC01
10000001 ABC $5.00 ABC001
10000002 BCD $2.34 BCD01
10000002 BCD $2.34 BCD.go
10000002 BCD $2.34 BD.c.2

One way to do that in awk would be like:

###Code:

$ awk '{ for (i=4; i <= NF; i++) print $1, $2, $3, $i }' file1 

###file1:

10000001 ABC $5.00 ABC01 ABC001 ABC1
10000002 BCD $2.34 BCD01 BCD.go BD.c.2 BDDCD7

###Results:

10000001 ABC $5.00 ABC01
10000001 ABC $5.00 ABC001
10000001 ABC $5.00 ABC1
10000002 BCD $2.34 BCD01
10000002 BCD $2.34 BCD.go
10000002 BCD $2.34 BD.c.2
10000002 BCD $2.34 BDDCD7
Source Link
Stephen Rauch
  • 4.3k
  • 15
  • 24
  • 33

One way to do that in awk would be like:

###Code:

$ awk '{ for (i=4; i < NF; i++) print $1, $2, $3, $i }' file1 

###file1:

10000001 ABC $5.00 ABC01 ABC001 ABC1
10000002 BCD $2.34 BCD01 BCD.go BD.c.2 BDDCD7

###Results:

10000001 ABC $5.00 ABC01
10000001 ABC $5.00 ABC001
10000002 BCD $2.34 BCD01
10000002 BCD $2.34 BCD.go
10000002 BCD $2.34 BD.c.2