09-16-2001
A "poor man's" method could be to use
two file descriptors (1 read fd and 1 write fd)
on the file and then use
getc() and examine the value of the character
returned (and subsequent character values) to
match the string in question. Once you've found
it, you can then "seek()" to the start of the
pattern and write the new pattern assuming you
are writing the same number of bytes to replace
the old pattern. If not, then you will have to
write to a new file (maybe a tmp file) and be
sure to write out all non matching data to the
new file. You can then replace the old file
with the new one ( see: unlink(), link() ).
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi ,
i would convert the following file
V M BOURSE EMPLOI mail/mail-03/dfr-dc.nsf
V M DelSpam mail/mail-04/celine_bet.nsf
like that :
mail/mail-03/dfr-dc.nsf;BOURSE EMPLOI
mail/mail-20/celine_bet.nsf;DelSpam
the second field ( ex:... (2 Replies)
Discussion started by: Nicol
2 Replies
2. Shell Programming and Scripting
I need help manipulating text in a file. I am wanting to know a way to shell (ksh)script-edit a file by having a script that searches for a specific string, and then input lines of text in the file before that specific string, without deleting any of the other text in the file.
I got this... (2 Replies)
Discussion started by: LinuxRacr
2 Replies
3. Shell Programming and Scripting
Hi,
I have a file with 3 lines like
aaaabb
abcdef
wertyu
now i want to insert a new character "Q" in the 3rd position of every line of the file....
I found a way to do it but i felt it is little complex. Do you guys have any ideas (4 Replies)
Discussion started by: siddu_chittari
4 Replies
4. Shell Programming and Scripting
Hi,
i have a file with fixed record length with the following content (only one sentence)
12345678901234567890123456789012345678901234567890
12345678 87654321 hugo meyer friedhofpaul
the numbers above are only the column-positions and not part of the file!
Now i want... (2 Replies)
Discussion started by: FranzB
2 Replies
5. UNIX for Dummies Questions & Answers
Hi there,
I've trawled all over the web for help, and although seen some examples of what i want to do, I cannot seem to get it to work. I need to have this as a script.
If anyone can help, I would like to do the following: I have 2 files, File A and File B. I would like to keep file A but... (5 Replies)
Discussion started by: lazerlyte
5 Replies
6. Shell Programming and Scripting
Legends,
Please help me to get the following
I have a file abc.txt with the following contents
12
13
14
15
And, i want to get the output to a variable like below
12,13,14,15 ....
How do i do this?
Regards,
san
Please use code tags when posting data and code samples! (5 Replies)
Discussion started by: sdosanjh
5 Replies
7. Shell Programming and Scripting
Hi Forum.
I have the following 2 files: edw_mf_bypass_msg.txt and EDW_server.cfg.
edw_mf_bypass_msg.txt - File#1 contains the following text
To EDW Support:
This is an automatic email sent from var_hostname.
Please note that the Mutual Fund load did not run today due to previous... (2 Replies)
Discussion started by: pchang
2 Replies
8. UNIX for Dummies Questions & Answers
Hi,
I am looking for an awk script which should help me to meet the following requirement:
File1 has records in following format
INF: FAILEd RECORD AB1234
INF: FAILEd RECORD PQ1145
INF: FAILEd RECORD AB3215
INF: FAILEd RECORD AB6114
............................ (2 Replies)
Discussion started by: mintu41
2 Replies
9. Shell Programming and Scripting
Hi ,
I have a simple text file with contents as below:
12345678900 971,76 4234560890
22345678900 5971,72 5234560990
32345678900 71,12 6234560190
the new csv-file should be like:
Column1;Column2;Column3;Column4;Column5
123456;78900;971,76;423456;0890... (9 Replies)
Discussion started by: FreddyDaKing
9 Replies
10. Shell Programming and Scripting
Hi,
I am confused how to proceed firther please find the problem below:
Input Files:
DCIA_GEOG_DATA_OCEAN.TXT
DCIA_GEOG_DATA_MCRO.TXT
DCIA_GEOG_DATA_CVAS.TXT
DCIA_GEOG_DATA_MCR.TXT
Output File Name: MMA_RFC_GEOG_NAM_DIM_LOD.txt
Sample Record(DCIA_GEOG_DATA_OCEAN.TXT):(Layout same for... (4 Replies)
Discussion started by: Arun Mishra
4 Replies
LEARN ABOUT ULTRIX
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)