grep line


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers grep line
# 1  
Old 03-02-2011
Bumping up posts or double posting is not permitted in these forums.

Please read the rules, which you agreed to when you registered, if you have not already done so.

You may receive an infraction for this. If so, don't worry, just try to follow the rules more carefully. The infraction will expire in the near future

Thank You.

The UNIX and Linux Forums.

Proceed here:

https://www.unix.com/shell-programmin...ep-output.html
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Grep -q not works with multiples grep in same line

Hi, I'm trying to make a grep to see if exists occurrences with a sentence like these: grep -qi "message" file0 | grep -i $date | grep -vi "exception" echo $? 1 If I execute without -q modifier I can find occurrences. Someone could help me please? Thanks and sorry for my English! (1 Reply)
Discussion started by: mierdatuti
1 Replies

2. Shell Programming and Scripting

Sed/grep: check if line exists, if not add line?

Hello, I'm trying to figure out how to speed up the following as I want to use multiple commands to search thousands of files. is there a way to speed things up? Example I want to search a bunch of files for a specific line, if this line already exists do nothing, if it doesn't exist add it... (4 Replies)
Discussion started by: f77hack
4 Replies

3. UNIX for Dummies Questions & Answers

Grep with special chars line by line

I have a file that includes strings with special characters, eg file1 line: 1 - special 1 line: = 4 line; -3 etc How can I grep the lines of file1 from file2, line by line? I used fgrep and egrep to grep a particular line and worked fine, but when I used: cat file1|while read line;do... (2 Replies)
Discussion started by: FelipeAd
2 Replies

4. UNIX for Dummies Questions & Answers

Piping grep into awk, read the next line using grep

Hi, I have a number of files containing the information below. """"" Fundallinfo 6.3950 14.9715 14.0482 """"" I would like to grep for Fundallinfo and use it to read the next line? I ideally would like to read the three numbers that follow in the next line and... (2 Replies)
Discussion started by: Paul Moghadam
2 Replies

5. Shell Programming and Scripting

How to Grep than scan line below grep pattern

Hello Colleagues, I have a file that looks like below. 6-12731913-12731913 9230760143480 410018547148230 20131002193434+0500 20131002193434+0500 ;20131002T161031000-10.50.241.21-21912131-1419034760, ver: 0 20131009 92220056296730 CC0P abc Core_Context_R1A SMS 6-12726796-12726796... (14 Replies)
Discussion started by: umarsatti
14 Replies

6. Shell Programming and Scripting

sed command to grep multiple pattern present in single line and delete that line

here is what i want to achieve.. i have a file with below contents cat fileName blah blah blah . .DROP this REJECT that . --sport 7800 -j REJECT --reject-with icmp-port-unreachable --dport 7800 -j REJECT --reject-with icmp-port-unreachable . . . more blah blah blah --dport 3306... (14 Replies)
Discussion started by: vivek d r
14 Replies

7. Shell Programming and Scripting

How to grep the line with error where keyword in next line is known.

If a file consists of a thousands of line. There is a error line in the file which exists just before the line with word "Manish". How could I write a script to grep the line with error. Ex:- If I have a UNIX file which contains the following: bash-3.2$ cat unix.txt Unix (officially... (4 Replies)
Discussion started by: manishdivs
4 Replies

8. Shell Programming and Scripting

Sed or Grep to delete line containing patter plus extra line

I'm new to using sed and grep commands, but have found them extremely useful. However I am having a hard time figuring this one out: Delete every line containing the word CEN and the next line as well. ie. test.txt blue 324 CEN green red blue 324 CEN green red blue to produce:... (2 Replies)
Discussion started by: rocketman88
2 Replies

9. Shell Programming and Scripting

cat file1 read line-per-line then grep -A 15 lines down in fileb

STEP 1 # Set variable FILE=/tmp/mainfile SEARCHFILE =/tmp/searchfile # THIS IS THE MAIN FILE. cat /tmp/mainfile Interface Ethernet0/0 "outside", is up, line protocol is up Hardware is i82546GB rev03, BW 100 Mbps Full-Duplex(Full-duplex), 100 Mbps(100 Mbps) MAC address... (6 Replies)
Discussion started by: irongeekio
6 Replies

10. UNIX for Dummies Questions & Answers

Grep or other ways to output line above and/or below searched line

Hi all, Would like to know how I could search for a string 'xyz' but have the output show the line plus the line above and/or below all lines found. eg. search for xyz from file containing: abc 12345 asdf xyz asdfds wwwww kjkjkj ppppp kkkxyz eeee zzzzz and the output to... (2 Replies)
Discussion started by: sammac
2 Replies
Login or Register to Ask a Question
HOVEL(3)						      Quick Database Manager							  HOVEL(3)

NAME
Hovel - the GDBM-compatible API of QDBM SYNOPSIS
#include <hovel.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> typedef struct { char *dptr; size_t dsize; } datum; extern char *gdbm_version; extern gdbm_error gdbm_errno; char *gdbm_strerror(gdbm_error gdbmerrno); GDBM_FILE gdbm_open(char *name, int block_size, int read_write, int mode, void (*fatal_func)(void)); GDBM_FILE gdbm_open2(char *name, int read_write, int mode, int bnum, int dnum, int align); void gdbm_close(GDBM_FILE dbf); int gdbm_store(GDBM_FILE dbf, datum key, datum content, int flag); int gdbm_delete(GDBM_FILE dbf, datum key); datum gdbm_fetch(GDBM_FILE dbf, datum key); int gdbm_exists(GDBM_FILE dbf, datum key); datum gdbm_firstkey(GDBM_FILE dbf); datum gdbm_nextkey(GDBM_FILE dbf, datum key); void gdbm_sync(GDBM_FILE dbf); int gdbm_reorganize(GDBM_FILE dbf); int gdbm_fdesc(GDBM_FILE dbf); int gdbm_setopt(GDBM_FILE dbf, int option, int *value, int size); DESCRIPTION
Hovel is the API which is compatible with GDBM. So, Hovel wraps functions of Depot and Curia as API of GDBM. It is easy to port an appli- cation from GDBM to QDBM. In most cases, you should only replace the includings of `gdbm.h' with `hovel.h' and replace the linking option `-lgdbm' with `-lqdbm'. Hovel cannot handle database files made by the original GDBM. In order to use Hovel, you should include `hovel.h', `stdlib.h', `sys/types.h' and `sys/stat.h' in the source files. Usually, the follow- ing description will be near the beginning of a source file. #include <hovel.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> An object of `GDBM_FILE' is used as a database handle. A database handle is opened with the function `gdbm_open' and closed with `gdbm_close'. You should not refer directly to any member of a handle. Although Hovel works as a wrapper of Depot and handles a database file usually, if you use the function `gdbm_open2' to open the handle, it is possible to make behavior of a handle as a wrapper of Curia and treat a database directory. Structures of `datum' type is used in order to give and receive data of keys and values with functions of Hovel. typedef struct { char *dptr; size_t dsize; } datum; `dptr' specifies the pointer to the region of a key or a value. `dsize' specifies the size of the region. The external variable `gdbm_version' is the string containing the version information. extern char *gdbm_version; The external variable `gdbm_errno' is assigned with the last happened error code. Refer to `hovel.h' for details of the error codes. extern gdbm_error gdbm_errno; The initial value of this variable is `GDBM_NO_ERROR'. The other values are `GDBM_MALLOC_ERROR', `GDBM_BLOCK_SIZE_ERROR', `GDBM_FILE_OPEN_ERROR', `GDBM_FILE_WRITE_ERROR', `GDBM_FILE_SEEK_ERROR', `GDBM_FILE_READ_ERROR', `GDBM_BAD_MAGIC_NUMBER', `GDBM_EMPTY_DATABASE', `GDBM_CANT_BE_READER', `GDBM_CANT_BE_WRITER', `GDBM_READER_CANT_DELETE', `GDBM_READER_CANT_STORE', `GDBM_READER_CANT_REORGANIZE', `GDBM_UNKNOWN_UPDATE', `GDBM_ITEM_NOT_FOUND', `GDBM_REORGANIZE_FAILED', `GDBM_CANNOT_REPLACE', `GDBM_ILLEGAL_DATA', `GDBM_OPT_ALREADY_SET', and `GDBM_OPT_ILLEGAL'. The function `gdbm_strerror' is used in order to get a message string corresponding to an error code. char *gdbm_strerror(gdbm_error gdbmerrno); `gdbmerrno' specifies an error code. The return value is the message string of the error code. The region of the return value is not writable. The function `gdbm_open' is used in order to get a database handle after the fashion of GDBM. GDBM_FILE gdbm_open(char *name, int block_size, int read_write, int mode, void (*fatal_func)(void)); `name' specifies the name of a database. `block_size' is ignored. `read_write' specifies the connection mode: `GDBM_READER' as a reader, `GDBM_WRITER', `GDBM_WRCREAT' and `GDBM_NEWDB' as a writer. `GDBM_WRCREAT' makes a database file or directory if it does not exist. `GDBM_NEWDB' makes a new database even if it exists. You can add the following to writer modes by bitwise or: `GDBM_SYNC', `GDBM_NOLOCK', `GDBM_LOCKNB', `GDBM_FAST', and `GDBM_SPARSE'. `GDBM_SYNC' means a database is synchronized after every updating method. `GDBM_NOLOCK' means a database is opened without file locking. `GDBM_LOCKNB' means file locking is performed without blocking. `GDBM_FAST' is ignored. `GDBM_SPARSE' is an original mode of QDBM and makes database a sparse file. `mode' specifies mode of a database file as the one of `open' call does. `fatal_func' is ignored. The return value is the database handle or `NULL' if it is not successful. The function `gdbm_open2' is used in order to get a database handle after the fashion of QDBM. GDBM_FILE gdbm_open2(char *name, int read_write, int mode, int bnum, int dnum, int align); `name' specifies the name of a database. `read_write' specifies the connection mode: `GDBM_READER' as a reader, `GDBM_WRITER', `GDBM_WRCREAT' and `GDBM_NEWDB' as a writer. `GDBM_WRCREAT' makes a database file or directory if it does not exist. `GDBM_NEWDB' makes a new database even if it exists. You can add the following to writer modes by bitwise or: `GDBM_SYNC', `GDBM_NOLOCK', `GDBM_LOCKNB', `GDBM_FAST', and `GDBM_SPARSE'. `GDBM_SYNC' means a database is synchronized after every updating method. `GDBM_NOLOCK' means a database is opened without file locking. `GDBM_LOCKNB' means file locking is performed without blocking. `GDBM_FAST' is ignored. `GDBM_SPARSE' is an original mode of QDBM and makes database sparse files. `mode' specifies a mode of a database file or a database directory as the one of `open' or `mkdir' call does. `bnum' specifies the number of elements of each bucket array. If it is not more than 0, the default value is specified. `dnum' specifies the number of division of the database. If it is not more than 0, the returning handle is created as a wrapper of Depot, else, it is as a wrapper of Curia. `align' speci- fies the basic size of alignment. The return value is the database handle or `NULL' if it is not successful. If the database already exists, whether it is one of Depot or Curia is measured automatically. The function `gdbm_close' is used in order to close a database handle. void gdbm_close(GDBM_FILE dbf); `dbf' specifies a database handle. Because the region of the closed handle is released, it becomes impossible to use the handle. The function `gdbm_store' is used in order to store a record. int gdbm_store(GDBM_FILE dbf, datum key, datum content, int flag); `dbf' specifies a database handle connected as a writer. `key' specifies a structure of a key. `content' specifies a structure of a value. `flag' specifies behavior when the key overlaps, by the following values: `GDBM_REPLACE', which means the specified value overwrites the existing one, `GDBM_INSERT', which means the existing value is kept. The return value is 0 if it is successful, 1 if it gives up because of overlaps of the key, -1 if other error occurs. The function `gdbm_delete' is used in order to delete a record. int gdbm_delete(GDBM_FILE dbf, datum key); `dbf' specifies a database handle connected as a writer. `key' specifies a structure of a key. The return value is 0 if it is suc- cessful, -1 if some errors occur. The function `gdbm_fetch' is used in order to retrieve a record. datum gdbm_fetch(GDBM_FILE dbf, datum key); `dbf' specifies a database handle. `key' specifies a structure of a key. The return value is a structure of the result. If a record corresponds, the member `dptr' of the structure is the pointer to the region of the value. If no record corresponds or some errors occur, `dptr' is `NULL'. Because the region pointed to by `dptr' is allocated with the `malloc' call, it should be released with the `free' call if it is no longer in use. The function `gdbm_exists' is used in order to check whether a record exists or not. int gdbm_exists(GDBM_FILE dbf, datum key); `dbf' specifies a database handle. `key' specifies a structure of a key. The return value is true if a record corresponds and no error occurs, or false, else, it is false. The function `gdbm_firstkey' is used in order to get the first key of a database. datum gdbm_firstkey(GDBM_FILE dbf); `dbf' specifies a database handle. The return value is a structure of the result. If a record corresponds, the member `dptr' of the structure is the pointer to the region of the first key. If no record corresponds or some errors occur, `dptr' is `NULL'. Because the region pointed to by `dptr' is allocated with the `malloc' call, it should be released with the `free' call if it is no longer in use. The function `gdbm_nextkey' is used in order to get the next key of a database. datum gdbm_nextkey(GDBM_FILE dbf, datum key); `dbf' specifies a database handle. The return value is a structure of the result. If a record corresponds, the member `dptr' of the structure is the pointer to the region of the next key. If no record corresponds or some errors occur, `dptr' is `NULL'. Because the region pointed to by `dptr' is allocated with the `malloc' call, it should be released with the `free' call if it is no longer in use. The function `gdbm_sync' is used in order to synchronize updating contents with the file and the device. void gdbm_sync(GDBM_FILE dbf); `dbf' specifies a database handle connected as a writer. The function `gdbm_reorganize' is used in order to reorganize a database. int gdbm_reorganize(GDBM_FILE dbf); `dbf' specifies a database handle connected as a writer. If successful, the return value is 0, else -1. The function `gdbm_fdesc' is used in order to get the file descriptor of a database file. int gdbm_fdesc(GDBM_FILE dbf); `dbf' specifies a database handle connected as a writer. The return value is the file descriptor of the database file. If the database is a directory the return value is -1. The function `gdbm_setopt' has no effect. int gdbm_setopt(GDBM_FILE dbf, int option, int *value, int size); `dbf' specifies a database handle. `option' is ignored. `size' is ignored. The return value is 0. The function is only for com- patibility. If QDBM was built with POSIX thread enabled, the global variable `gdbm_errno' is treated as thread specific data, and functions of Hovel are reentrant. In that case, they are thread-safe as long as a handle is not accessed by threads at the same time, on the assumption that `errno', `malloc', and so on are thread-safe. SEE ALSO
qdbm(3), depot(3), curia(3), relic(3), cabin(3), villa(3), odeum(3), ndbm(3), gdbm(3) Man Page 2004-04-22 HOVEL(3)