If you have a few thousand files, there's an even faster way:
Once you're processing more than a few lines, it's faster to use awk than a shell language, so we let awk translate the names for us, feeding them into xargs, which will run 'awk '{...}' file1 file2 file3 file4 file5 ...' for as many files as it can safely cram in one commandline, over and over, until it's used up all the filenames. Thus can reduce the number of times awk needs to be run manyfold, making it more efficient.
Hi,
I have a pointer file ptr.txt.
There may be any number of files mentioned in the ptr.txt file
eg: cat ptr.txt
/home/abc.txt
/home/pqr.txt
/home/xyz.txt
I have to read this pointer file and merge the files given in the pointer file
so that final file say... (1 Reply)
Hi Guys,
I wonder whether is possible to merge two files using awk. I have two files one with 7 columns and another one with 9 columns and the first column on both files is identical so will be my key to merge the files. Any ideas.Thanks in advance.
Harby. (2 Replies)
hi,
i am facing a problem in merging two files using awk,
the problem is as stated below,
file1:
A|B|C|D|E|F|G|H|I|1
M|N|O|P|Q|R|S|T|U|2
AA|BB|CC|DD|EE|FF|GG|HH|II|1
....
....
....
file2 :
1|Mn|op|qr (2 Replies)
Hi, guys. I have one question:
I have two files: passwd and shadow (the number of records in these files are not equal)the contents of them are below:
passwd:
**************
ftp:x:24:24:
sshd:x:71:65:
uucp:x:10:14:
brownj:x:5005:1000:
sherrys: x :5006:1000:
...
*************
... (2 Replies)
I want to merge data from 2nd file to 1st file based on 1st column
File1
====
data1,12,comp1
data1,13,comp2
data3,14,,
File2
====
data1,11,host1,lit
data2,11,host2,lit3
data3,11,host3,lit4
Required Ouput (5 Replies)
I have two file like follows. I want to merge them according the first field of file1. The separator of file1 is tab, while the second one is ",". I tried some code, but can't get the results.
File1:
AABB 6072 28 5922
BBCC 316 147 162
CCDD 907 71 231
File2:
CCDD,hTRBV12-4,hTRBJ2-3,319895... (7 Replies)
Data files coming in different names in a file name called process.txt.
1. shipments_yyyymmdd.gz
2 Order_yyyymmdd.gz
3. Invoice_yyyymmdd.gz
4. globalorder_yyyymmdd.gz
The process needs to discard all the below files and only process two of the 4 file names available
... (1 Reply)
Hi,
i have two files like these:
FILE 1
00:0f:35:1b:0c:00 1402691094.750049000 00:0f:35:1b:0c:00 1402691087.474893000
44:d3:ca:fd:a2:08 1402691091.865127000
30:e4:db:c1:df:de 1402691090.192464000
FILE 2_
00:0F:35 Cisco Systems, Inc
30:E4:DB Cisco Systems, Inc
I need a file 3, that... (5 Replies)
Discussion started by: bertiko
5 Replies
LEARN ABOUT PLAN9
join
JOIN(1) General Commands Manual JOIN(1)NAME
join - relational database operator
SYNOPSIS
join [ options ] file1 file2
DESCRIPTION
Join forms, on the standard output, a join of the two relations specified by the lines of file1 and file2. If one of the file names is the
standard input is used.
File1 and file2 must be sorted in increasing ASCII collating sequence on the fields on which they are to be joined, normally the first in
each line.
There is one line in the output for each pair of lines in file1 and file2 that have identical join fields. The output line normally con-
sists of the common field, then the rest of the line from file1, then the rest of the line from file2.
Input fields are normally separated spaces or tabs; output fields by space. In this case, multiple separators count as one, and leading
separators are discarded.
The following options are recognized, with POSIX syntax.
-a n In addition to the normal output, produce a line for each unpairable line in file n, where n is 1 or 2.
-v n Like -a, omitting output for paired lines.
-e s Replace empty output fields by string s.
-1 m
-2 m Join on the mth field of file1 or file2.
-jn m Archaic equivalent for -n m.
-ofields
Each output line comprises the designated fields. The comma-separated field designators are either 0, meaning the join field, or
have the form n.m, where n is a file number and m is a field number. Archaic usage allows separate arguments for field designators.
-tc Use character c as the only separator (tab character) on input and output. Every appearance of c in a line is significant.
EXAMPLES
sort /adm/users | join -t: -a 1 -e "" - bdays
Add birthdays to password information, leaving unknown birthdays empty. The layout of is given in users(6); bdays contains sorted
lines like
tr : ' ' </adm/users | sort -k 3 3 >temp
join -1 3 -2 3 -o 1.1,2.1 temp temp | awk '$1 < $2'
Print all pairs of users with identical userids.
SOURCE
/sys/src/cmd/join.c
SEE ALSO sort(1), comm(1), awk(1)BUGS
With default field separation, the collating sequence is that of sort -b -ky,y; with -t, the sequence is that of sort -tx -ky,y.
One of the files must be randomly accessible.
JOIN(1)