command paste with variables


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting command paste with variables
# 15  
Old 03-27-2009
to the script from shamrock an error occured:
line12: syntax error near unexpected token`&'
line12: `echo $var1|&'
# 16  
Old 03-27-2009
Quote:
Originally Posted by samos
yes both files have the sime number of lines. and \n is not written in variables...
Well in this case, try this

Code:
#!/bin/ksh

# The fact that we set IFS only on new line is that in this question
# space and tabs are not considered as delimiters, only new lines
IFS='
'

FINAL_RESULT=""
RESULT=""

function concatenate
{
    VARIABLE1=$1
    VARIABLE2=$2
    
        
    CURRENT_LINE_NUMBER_IN_VARIABLE1=1
    CURRENT_LINE_NUMBER_IN_VARIABLE2=1
    
    for ITERATOR1 in $VARIABLE1
    do
        CURRENT_LINE_NUMBER_IN_VARIABLE2=1
        for ITERATOR2 in $VARIABLE2
        do
            if (( CURRENT_LINE_NUMBER_IN_VARIABLE2 < 
                 CURRENT_LINE_NUMBER_IN_VARIABLE1 ))
            then
                (( CURRENT_LINE_NUMBER_IN_VARIABLE2 = 
                      CURRENT_LINE_NUMBER_IN_VARIABLE2 + 1 ))
                
            else
                FINAL_RESULT="$FINAL_RESULT\n$ITERATOR1$ITERATOR2"
                (( CURRENT_LINE_NUMBER_IN_VARIABLE2 = 
                      CURRENT_LINE_NUMBER_IN_VARIABLE2 + 1 ))
                break;
            fi
        done
    
    (( CURRENT_LINE_NUMBER_IN_VARIABLE1 = 
            CURRENT_LINE_NUMBER_IN_VARIABLE1 + 1 ))
    done
    
(( TOTAL_LENGTH_MINUS_FIRST_NEW_LINE = ${#FINAL_RESULT} - 2 ))
FINAL_RESULT=${FINAL_RESULT:2:$TOTAL_LENGTH_MINUS_FIRST_NEW_LINE}
}

# In this example we suppose VARIABLE1 and VARIABLE2 are those lines
# that have to be concatenated, each line by its corresponding in
# another variable
VARIABLE1="var1 first line
var1 second line
var1 third line
var1 forth line
var1 fifth line"

VARIABLE2="var2 first line
var2 second line
var2 third line
var2 forth line
var2 fifth line"



concatenate "$VARIABLE1" "$VARIABLE2"

print $FINAL_RESULT

Smilie
# 17  
Old 03-27-2009
Quote:
Originally Posted by samos
to the script from shamrock an error occured:
line12: syntax error near unexpected token`&'
line12: `echo $var1|&'
Switch to the ksh and replace the very first line with #!/usr/bin/ksh
# 18  
Old 03-27-2009
it is the same error
# 19  
Old 03-27-2009
Quote:
Originally Posted by samos
it is the same error
Did you run my script to see the result? Smilie
# 20  
Old 03-27-2009
yes i do but i for input 2400 lines it worked really really long.....
# 21  
Old 03-27-2009
Quote:
Originally Posted by samos
it is the same error
You must be using a really old shell since the newer Korn and POSIX shells have the coprocess feature built into them.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Issue with paste command

Hi, I am facing issue with paste command. It is adding spaces or tab in between. I have say 3 files with below data File_1 TH THI THIS I File_2 IS IS S IS RE S File_3 RECORD 1 CORD 2 IS RECORD 3 (3 Replies)
Discussion started by: Simanto
3 Replies

2. Shell Programming and Scripting

Problems with awk (fatal error) and paste (two variables into one column-by-column)

Hello, I have a script extracting columns of useful numbers from a data file, and manipulating the numbers with awk commands. I have problems with my script... 1. There are two lines assigning numbers to $BaseForAveraging. If I use the commented line (the first one) and let the second one... (9 Replies)
Discussion started by: vgbraymond
9 Replies

3. Shell Programming and Scripting

Need help with paste command using variables

How can I accomplish this? I basically want to merge two variables onto the same line. I can do it with two FILES this way: $ cat /tmp/users_in.list | awk -F "," '{print $2}' | cut -c -1 > first.initial $ awk -F "," '{print $1}' /tmp/users_in.list | awk '{print $1}' > last.name $ paste... (5 Replies)
Discussion started by: greenlightening
5 Replies

4. Shell Programming and Scripting

How do I use paste command in while condition??

there are lot of files where in mostly all the file contains 2columnsAl,1 Ail,13 Al,3 Al,1 Al,3 Al,2 Al,3 Al,1 Al,1 Al,1 My requirement is i wanted only the second column of every file as a column ony in the base file... I used paste command... but it is not helping as I'm using while... (7 Replies)
Discussion started by: nikhil jain
7 Replies

5. Shell Programming and Scripting

echo two variables like the paste command is not working

Dear all, I have two files like this file1 A B C D E F file2 1,2 3,4 5,6 I want this output output_expected A B 1,2 C D 3,4 E F 5,6 (3 Replies)
Discussion started by: valente
3 Replies

6. Shell Programming and Scripting

Can't paste in command line.

Hello. I've made a simple script which asks the user to input a hash and then runs a command that replaces the variable $hash with what the user inserted. The ting is that when the programm asks for input I can't paste anything there..! any clues?? :wall: (8 Replies)
Discussion started by: louboulos
8 Replies

7. Shell Programming and Scripting

Bash-how to properly READ and PASTE variables.

Recently i made a script for a project at molecular dynamics but am stuck at the last step.The thing i want to do is to ask the user to input the number of particles, then replace the bolded numbers at lines 9 and 17.. code #!/bin/bash #read number of particles echo "insert the number of... (2 Replies)
Discussion started by: arisinhell
2 Replies

8. UNIX for Dummies Questions & Answers

Need help with using cut and paste command

I have a file which contains 3 fields separated by tabs example andrew kid baker I need to swap kid and baker using cut and paste commands how is this to be done? Thanks (1 Reply)
Discussion started by: drew211
1 Replies

9. UNIX for Dummies Questions & Answers

paste command

input1 15 150 input2 x 10 100 input3 y 20 200 z 34 44 cmd paste -d "\t" input1 input2 input3 >>output output (1 Reply)
Discussion started by: repinementer
1 Replies

10. UNIX for Advanced & Expert Users

paste command

I wonder if any body can help me with a command i am struggling with. I have a file with around 400 lines in, in a program i have it pulls out each line at a time so that data from the line can be cross referenced with another file. If it finds a match it pulls out a ocde from the second file, this... (5 Replies)
Discussion started by: mariner
5 Replies
Login or Register to Ask a Question