#!/bin/bash
DATA1=file1.txt
DATA2=file2.txt
awk 'BEGIN {
while ((getline < "'$DATA2'") > 0)
f2array[$1] = "foo";
}
{
results[$1]+=0
results[$2]+=0
results[$3]+=0
if ( $1 in f2array )
results[$1]++
if ( $2 in f2array )
results[$2]++
if ( $3 in f2array )
results[$3]++
}
END{
for (var in results)
print var " has " results[var] " occurrences"
}' $DATA1
the result:
Code:
521 has 0 occurrences
1124 has 0 occurrences
4 has 0 occurrences
683 has 2 occurrences
129 has 1 occurrences
937 has 0 occurrences
5 has 5 occurrences
6 has 0 occurrences
938 has 0 occurrences
939 has 0 occurrences
8 has 0 occurrences
20 has 2 occurrences
5883 has 0 occurrences
1851 has 0 occurrences
1860 has 3 occurrences
1852 has 0 occurrences
14 has 0 occurrences
1 has 0 occurrences
1122 has 2 occurrences
2 has 0 occurrences
520 has 0 occurrences
use the following if you want to exclude numbers that have no occurrences:
Code:
#!/bin/bash
DATA1=file1.txt
DATA2=file2.txt
awk 'BEGIN {
while ((getline < "'$DATA2'") > 0)
f2array[$1] = "foo";
}
{
if ( $1 in f2array )
results[$1]++
if ( $2 in f2array )
results[$2]++
if ( $3 in f2array )
results[$3]++
}
END{
for (var in results)
print var " has " results[var] " occurrences"
}' $DATA1
ths output:
Code:
683 has 2 occurrences
129 has 1 occurrences
5 has 5 occurrences
20 has 2 occurrences
1860 has 3 occurrences
1122 has 2 occurrences
Hi All,
I am trying to write a shell script which firstly will search some files and then increase the port numbers mentioned in them by a certain no.
let me clear it with an example-
suppose there r few files a,b,c,d....
file a's content-
<serverEntries xmi:id="ServerEntry_1"... (3 Replies)
Morning,
I have a database log file that i need to scan thru to find all successful logins within the last 40 days,
What i have currently done is create a bash script to scan the last month and pipe out the results to a text file.
YEAR=`date '+%Y'`
MONTH=`date '+%m'`
grep 'Login... (12 Replies)
Hello all,
New to this forum!
I got a Q: i want to find all files with numbers in the file name. e.g. blabla234.pm or fool654.pl
action i took:
ls | egrep '+'
ls | egrep
ls | egrep +
ls | egrep ''
ls | egrep '(+)'
ls | egrep '()'
ls | egrep '(.*.*)'
ls | egrep '.*.*'
ls | grep... (2 Replies)
cat *.out |grep "<some text>" | awk '{print $6}'
For ex,This will reutrn me
11111
22222
is it possible to add these two numbers in the above given command itself?I can write this to a file and find the sum.
But I prefer to this calculation in the above given line itself.
Any... (3 Replies)
Hi,
I want to write a script that does something like this:
I have a file, in which in every line, there is a string of words, and followed by some space, a number.
Now, I want to identify the line, which has the largest startFace number (say m=8118), take that number and add it to the... (2 Replies)
i want to basically get the lowest numbers from a list ... for example my input file is ....
1
2
3
6
7
8
9
10
11
13
Now i want to create a script or a one liner which i can use like this ...
for example ..../getlowest 3 --> this gives me the next 3 lowest numbers which... (6 Replies)
Hi,
I have a file as
ABC 1634230,1634284,1634349,1634468 1634272,1634301,1634356,1634534
What I want is to find distance between the numbers.. column 1 is the gene name and column 2 are starts and column 3 are their respective stops for the starts. So what I want is column 3 which has +1... (2 Replies)
Dear All
I am having data file containing 0 to 40,000 like this...
0 5
1 65
2 159
3 356
...
...
40000 19
I want to find the probability of distribution between the numbers. The second column values are angles from 0 to 360 and the 1st column is number of files.
I am expecting... (2 Replies)
Discussion started by: bala06
2 Replies
LEARN ABOUT V7
fnmatch
FNMATCH(3) Linux Programmer's Manual FNMATCH(3)NAME
fnmatch - match filename or pathname
SYNOPSIS
#include <fnmatch.h>
int fnmatch(const char *pattern, const char *string, int flags);
DESCRIPTION
The fnmatch() function checks whether the string argument matches the pattern argument, which is a shell wildcard pattern.
The flags argument modifies the behavior; it is the bitwise OR of zero or more of the following flags:
FNM_NOESCAPE
If this flag is set, treat backslash as an ordinary character, instead of an escape character.
FNM_PATHNAME
If this flag is set, match a slash in string only with a slash in pattern and not by an asterisk (*) or a question mark (?)
metacharacter, nor by a bracket expression ([]) containing a slash.
FNM_PERIOD
If this flag is set, a leading period in string has to be matched exactly by a period in pattern. A period is considered to be
leading if it is the first character in string, or if both FNM_PATHNAME is set and the period immediately follows a slash.
FNM_FILE_NAME
This is a GNU synonym for FNM_PATHNAME.
FNM_LEADING_DIR
If this flag (a GNU extension) is set, the pattern is considered to be matched if it matches an initial segment of string which is
followed by a slash. This flag is mainly for the internal use of glibc and is implemented only in certain cases.
FNM_CASEFOLD
If this flag (a GNU extension) is set, the pattern is matched case-insensitively.
FNM_EXTMATCH
If this flag (a GNU extension) is set, extended patterns are supported, as introduced by 'ksh' and now supported by other shells.
The extended format is as follows, with pattern-list being a '|' separated list of patterns.
'?(pattern-list)'
The pattern matches if zero or one occurrences of any of the patterns in the pattern-list match the input string.
'*(pattern-list)'
The pattern matches if zero or more occurrences of any of the patterns in the pattern-list match the input string.
'+(pattern-list)'
The pattern matches if one or more occurrences of any of the patterns in the pattern-list match the input string.
'@(pattern-list)'
The pattern matches if exactly one occurrence of any of the patterns in the pattern-list match the input string.
'!(pattern-list)'
The pattern matches if the input string cannot be matched with any of the patterns in the pattern-list.
RETURN VALUE
Zero if string matches pattern, FNM_NOMATCH if there is no match or another nonzero value if there is an error.
ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7).
+----------+---------------+--------------------+
|Interface | Attribute | Value |
+----------+---------------+--------------------+
|fnmatch() | Thread safety | MT-Safe env locale |
+----------+---------------+--------------------+
CONFORMING TO
POSIX.1-2001, POSIX.1-2008, POSIX.2. The FNM_FILE_NAME, FNM_LEADING_DIR, and FNM_CASEFOLD flags are GNU extensions.
SEE ALSO sh(1), glob(3), scandir(3), wordexp(3), glob(7)COLOPHON
This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the
latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.
GNU 2015-12-28 FNMATCH(3)