05-27-2009
Quote:
Originally Posted by
Franklin52
Can you show us what you have tried with awk?
Regards
I try this script, but it says "awk: fatal: can't open source file `BEGIN {"
script:
#!/bin/sh
DATA1=file1.txt
DATA2=file2.txt
awk -f 'BEGIN {
while ((getline < "'$DATA2'") > 0)
f2array[$2] = $1
OFS=","}
{if (f2array[$1])
print f2array[$1],$2,$3,$4,$5
}' $DATA1
Thanks for your time to read my thread Franklin
![Embarrassment Smilie](https://www.unix.com/images/smilies/redface.gif)
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
how will i combine these 2 files below, with the desired output
specified below:
file1:
one
two
three
four
file2:
red
blue
yellow
green
file3:
aaa
bbb
ccc
ddd (3 Replies)
Discussion started by: apalex
3 Replies
2. UNIX for Dummies Questions & Answers
Hi,
is there a way to combine 2 files together, joining line 1 from file A with line 1 from file B, line 2 from A with line 2 from B etc.
File A File B
1 4
2 5
3 6
Combined result =
File C
14
25
36 (2 Replies)
Discussion started by: Enda Martin
2 Replies
3. Shell Programming and Scripting
I have two files which contain data from two different transactions in the same format:
<Name> - <Count>
My goal is to end up with data in this format after combining the two:
<Name> - <Count1> - <Count2>
Is this possible to do with awk, or is there something better?
Thanks... (3 Replies)
Discussion started by: bat711
3 Replies
4. Shell Programming and Scripting
Could someone help me reduce the number of runs for a shell program I created?
I have two text files below:
$ more list1.txt
01 AAA
02 BBB
03 CCC
04 DDD
$ more list2.txt
01 EEE
02 FFF
03 GGG
I want to combine the lines with the same number to get the below:
01 AAA 01 EEE
02... (4 Replies)
Discussion started by: stevefox
4 Replies
5. Shell Programming and Scripting
I have two files and I need to combine (not append - but combine a row to a row)
eg:
File1:
apples
grapes
oranges
lemons
File2:
red
green
orange
yellow
After combining, the file should look like: (the second column should start at a specific byte)
apples red
grapes green... (7 Replies)
Discussion started by: hemangjani
7 Replies
6. UNIX for Dummies Questions & Answers
Hi Gurus,
I have 2 files:
File1
Filename1 xx
Filename1 yy
Filename1 Total
Filename2 xx
Filename2 yy
Filename2 zz
Filename2 Total
Filename3 xx
Filename3 Total
and File2:
Filename1 10296 xxx Date: 09/01/08
Filename2 10296 xxx Date: 09/05/08... (36 Replies)
Discussion started by: rock1
36 Replies
7. Shell Programming and Scripting
Hi all,
I would be very grateful for some advice on the following.
I have several text files. The files are experiment results with columns of data separated by white space.
The files begin with several lines of header which are all preceeded by a comment character '#'.
Each file has a... (10 Replies)
Discussion started by: iomaire
10 Replies
8. UNIX for Dummies Questions & Answers
Hi All,
Request your expertise in tackling one requirement in my project,(i dont have much expertise in Shell Scripting). The requirement is as below,
1) We store the last run date of a process in a file. When the batch run the next time, it should read this file, get the last run date from... (1 Reply)
Discussion started by: dsfreddie
1 Replies
9. Shell Programming and Scripting
i am having 2 files like this
file 1
1,
2,
3,
4,
file2
5,
6,
7,
8,
what i want do is like this
i want to put all the contents for file 2 after file 1,means adding column in file1 (5 Replies)
Discussion started by: sagar_1986
5 Replies
10. Shell Programming and Scripting
Hi I have about 108 files (text files) that end with .avg and each one of these files have a distinct name that describes what is in the file. In each file there is a set of 80 values that are tab separated. I want to combine all 108 files into ONE main file.
So each file is named:
1.avg... (5 Replies)
Discussion started by: phil_heath
5 Replies
cat(1) General Commands Manual cat(1)
Name
cat - concatenate and print data
Syntax
cat [ -b ] [ -e ] [ -n ] [ -s ] [ -t ] [ -u ] [ -v ] file...
Description
The command reads each file in sequence and displays it on the standard output. Therefore, to display the file on the standard output you
type:
cat file
To concatenate two files and place the result on the third you type:
cat file1 file2 > file3
To concatenate two files and append them to a third you type:
cat file1 file2 >> file3
If no input file is given, or if a minus sign (-) is encountered as an argument, reads from the standard input file. Output is buffered in
1024-byte blocks unless the standard output is a terminal, in which case it is line buffered. The utility supports the processing of 8-bit
characters.
Options
-b Ignores blank lines and precedes each output line with its line number.
-e Displays a dollar sign ($) at the end of each output line.
-n Precedes all output lines (including blank lines) with line numbers.
-s Squeezes adjacent blank lines from output and single spaces output.
-t Displays non-printing characters (including tabs) in output. In addition to those representations used with the -v option, all tab
characters are displayed as ^I.
-u Unbuffers output.
-v Displays non-printing characters (excluding tabs and newline) as the ^x. If the character is in the range octal 0177 to octal 0241,
it is displayed as M-x. The delete character (octal 0177) displays as ^?. For example, is displayed as ^X.
See Also
cp(1), ex(1), more(1), pr(1), tail(1)
cat(1)