06-18-2009
Count lines between two patterns inside a file
Hi,
Im doing a script to find the number of lines included inside a file newly. These lines are in between #ifdef FLAG1 and #else or #endif or #else and #endif.
I tried like this,
awk '/#ifdef Flag1/,/#e/{print}' aa.c | wc -l
awk '/#ifndef Flag1/,/#endif/{print}' aa.c | awk '/#else/,/#endif/{print}' | wc -l
But it considers the first #endif that follows #ifdef. In some cases there are some nested #ifdef.
Can some one help me to solve this?
Thanks,
Priya.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
hi gurus,
I am having a file containing a list of tables.i want to find the count of records inside thes tables.
for this i have to connect into database and i have to put the count for all the tables inside another file i used the following loop once all the tablenames are inside the file.
... (1 Reply)
Discussion started by: navojit dutta
1 Replies
2. Shell Programming and Scripting
hi....
I have a file having more then thousand lines.
i want to remove selected lines in it.
And also if there exists two duplicate lines, I want to delete one of them.
Please help me with awk and shell.
:confused: (8 Replies)
Discussion started by: tushar_tus
8 Replies
3. Shell Programming and Scripting
Hi Gurus,
I have a file say for ex. file1 which has 3500 lines in it which are different account numbers and another file (file2) which has 230000 lines in it. I want to read all the lines in file1 and delete all those lines from file2 which has that same pattern as in file1. I am not quite... (4 Replies)
Discussion started by: toms
4 Replies
4. Shell Programming and Scripting
I have a very large file (10,000,000 lines), that contains a sample id and a property of that sample. I have another file that contains around 1,000,000 lines with sample ids that I want to remove from the original file (create a new file without these lines).
I know how to do this in Perl, but it... (9 Replies)
Discussion started by: Jo_puzzled
9 Replies
5. UNIX for Advanced & Expert Users
Hello Everyone
I need your help in fixing this issue., I have a log file which has data of users logging in to an application.
I want to search for a particular pattern in the log
ISSessionValidated=N
If this key word is found , the above 8 lines will contain the name of the user who's... (12 Replies)
Discussion started by: xtechkid
12 Replies
6. Shell Programming and Scripting
Hi,
I am new to shell scripting and is working on a script to extract lines from a log file between two time stamps using awk command. After some research I used following command:
awk '/01 Oct 2011/{p=1} /10 Oct 2011/{p=0} p' test.log >> tmp.log
This works fine. But now i want to... (3 Replies)
Discussion started by: davidtd
3 Replies
7. Shell Programming and Scripting
Hi,
I have a file with a '|' pipe delimeter. I want to find number of counts for a particular pattern in particular field. Is it possible to do it in a single command?
1) want to find total number of "0" in field 4.
2) want to find total number of different records in field 4 ( similar to... (5 Replies)
Discussion started by: rudoraj
5 Replies
8. Shell Programming and Scripting
Hi,
I have a file that is 430K lines long. It has records like below
|site1|MAP
|site2|MAP
|site1|MODAL
|site2|MAP
|site2|MODAL
|site2|LINK
|site1|LINK
My task is to count the number of time MAP, MODAL, LINK occurs for a single site and write new records like below to a new file
... (5 Replies)
Discussion started by: reach.sree@gmai
5 Replies
9. Shell Programming and Scripting
Hi,
I have a file content as below.
Table : PAYR
Displayed fields: 15 of 15 Fixed columns: 4 List width 0999... (4 Replies)
Discussion started by: shirdi
4 Replies
10. Shell Programming and Scripting
What i'm trying to do here is show X amount of lines before and after the string "serialNumber" is found.
BEFORE=3
AFTER=2
gawk '{a=$0} {count=0} /serialNumber/ && /./ {for(i=NR-'"${BEFORE}"';i<=NR;i++){count++ ;print a}for(i=1;i<'"${AFTER}"';i++){getline; print ; count ++; print... (5 Replies)
Discussion started by: SkySmart
5 Replies
LEARN ABOUT OPENDARWIN
types
TYPES(5) BSD File Formats Manual TYPES(5)
NAME
types -- system data types
SYNOPSIS
#include <sys/types.h>
DESCRIPTION
The file sys/types.h contains the defined data types used in the kernel (most are used through out the system).
#ifndef _TYPES_H_
#define _TYPES_H_
typedef short dev_t;
#ifndef _POSIX_SOURCE
/* major part of a device */
#define major(x) ((int)(((unsigned)(x)>>8)&0377))
/* minor part of a device */
#define minor(x) ((int)((x)&0377))
/* make a device number */
#define makedev(x,y) ((dev_t)(((x)<<8) | (y)))
#endif
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef unsigned short ushort; /* Sys V compatibility */
#include <machine/ansi.h>
#if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE)
#include <machine/types.h>
#endif
#ifdef _CLOCK_T_
typedef _CLOCK_T_ clock_t;
#undef _CLOCK_T_
#endif
#ifdef _SIZE_T_
typedef _SIZE_T_ size_t;
#undef _SIZE_T_
#endif
#ifdef _TIME_T_
typedef _TIME_T_ time_t;
#undef _TIME_T_
#endif
#ifndef _POSIX_SOURCE
typedef struct _uquad { unsigned long val[2]; } u_quad;
typedef struct _quad { long val[2]; } quad;
#endif
typedef long * qaddr_t; /* should be typedef quad * qaddr_t; */
typedef long daddr_t;
typedef char * caddr_t;
typedef u_long ino_t;
typedef long swblk_t;
typedef long segsz_t;
typedef long off_t;
typedef u_short uid_t;
typedef u_short gid_t;
typedef short pid_t;
typedef u_short nlink_t;
typedef u_short mode_t;
typedef u_long fixpt_t;
#ifndef _POSIX_SOURCE
#define NBBY 8 /* number of bits in a byte */
/*
* Select uses bit masks of file descriptors in longs. These macros
* manipulate such bit fields (the filesystem macros use chars).
* FD_SETSIZE may be defined by the user, but the default here should
* be >= NOFILE (param.h).
*/
#ifndef FD_SETSIZE
#define FD_SETSIZE 1024
#endif
typedef long fd_mask;
#define NFDBITS (sizeof(fd_mask) * NBBY) /* bits per mask */
#ifndef howmany
#define howmany(x, y) (((x)+((y)-1))/(y))
#endif
typedef struct fd_set {
fd_mask fds_bits[howmany(FD_SETSIZE, NFDBITS)];
} fd_set;
#define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1 << ((n) % NFDBITS)))
#define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS)))
#define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1 << ((n) % NFDBITS)))
#define FD_ZERO(p) bzero((char *)(p), sizeof(*(p)))
#endif /* !_POSIX_SOURCE */
#endif /* !_TYPES_H_ */
SEE ALSO
fs(5), time(3), lseek(2), adb(1)
HISTORY
A types file appeared in Version 7 AT&T UNIX.
Darwin AUGUST 2, 2001 Darwin