to my understanding, the amount of comma separated fields are constant but do not have to have data in them so they can be empty. Is it possible to do a grep search according to n-number of fields (comma separated) with some of those fields having specific values ?
Yes, there is. We'll go through that one step at a time:
when the fields are comma-separated, then a single field would be: some (optional, the field could be empty) character(s) followed by a comma. A regular expression covering this would be:
This regex would find any number of non-commas followed by a comma, in other words, one field. Lets assume now that you want to search for a specific content of the 18th field. You would have to look for 17 repetitions of this pattern followed by some value. Fortunately there is a "multiplicator" device for such occasions in regex:
This would search for 17 repetitions of "[^,]*," (the "\(" and "\)" are grouping characters, the "\{...\}" is said repetition counter - sort-of "parameterized asterisk"), followed by "search" as the text to search for in the 18th field.
You should no be able to construct your own regexp, based on this.
In Korn Shell, can you use "go to" statements? Would you then put paragraph names with a colon?
For example,
would you specify "goto para1" and then have the paragraph with the label para1:?
I am getting an error message when Idid this. I have my paragraph name 'clsbooks:' and I get... (13 Replies)
Hi,
I have two files with the following content:
gmrd.txt
235649;03;2563;598
291802;00;2563;598
314634;00;235649;598
235649;03;2563;598
393692;00;2563;598
411805;00;2563;598
411805;00;2563;598
235649;03;2563;598
414037;00;2563;598
575200;00;2563;598
70710;00;2563;598... (11 Replies)
I'm needing help with assigning variables inside a while loop of ksh script.
I have an input text file and ksh script below and I'm trying to create a script which will read the input file line by line, assign first and second word to variables and process the variables according to the contents. ... (4 Replies)
Hi all,
I am trying to tweak my ksh , i am running V: Version M-11/16/88i
I have my Backspace and up/down arrows working using the following code in my ~/.profile file.
set -o emacs
alias __A=$(print '\020' )
alias __B=$(print '\016' )
alias __C=$(print '\006' )
alias __D=$(print... (4 Replies)
I am modifying a Korn shell script in using the Exceed (Solaris 10 environment). My task is to read in a .txt file with dates arranged like this (01-Sep-2006). I am to read each line and take the dates, compare them to a benchmark date and depending on if it is older than the date or the date and... (6 Replies)
In a Korn shell script I have,
cat ../header | sed -e 's/flag1/$cnumb/g' > header.txt
The header is short
{{Company flag1}}
But the result in header.txt is
{{Company $cnumb}}
The value of $cnumb is 120. I am trying to get the value of $cnumb into the header.
I have tried /'$cnumb'/g,... (10 Replies)
Hello All,
I have another Korn shell question. I am writing a script that will ftp a file from my production database to my test database.
To this, I have to construct a loop that checks a specified folder for a file.
If the file exists, I want it execute the ftp protocol and then exit. ... (2 Replies)
Hi all,
Can someone point me in the right direction for a manual on the various statement options for 'if'. Basically I have a piece of code which says:
if ]
and I wondered what the -f was. I know the '!' means not equal..
As usual any help much appreciated.. (5 Replies)
Hi,
Consider the code snippet below:
fun()
{
while read x
do
echo $x
done < somefile_that_does_not_exists
}
fun
echo I am here
Korn shell on HPUX prints the message "I am here", while the behaviour is different on AIX korn shell. We do not get the message on AIX. Any... (5 Replies)
Guys, please help! I am currently using an AIX server however whenever I tried to use the typeset -F3, the variable is resulting with a "#".
In the given example below, I declared x to be a decimal holding 3 decimal places = 1.455. However whenever I tried to echo the $x, the resulting value... (9 Replies)
Discussion started by: zzavilz
9 Replies
LEARN ABOUT DEBIAN
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 /etc/passwd | join -t: -1 1 -a 1 -e "" - bdays
Add birthdays to the /etc/passwd file, leaving unknown birthdays empty. The layout of /adm/users is given in passwd(5); bdays con-
tains sorted lines like
tr : ' ' </etc/passwd | 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
/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)