04-04-2002
More on wildcards - help?
Greetings Peeps
I'm sure there was a wildcard syntax, being as *nix tends to be case-sensitive when matching filenames, that enabled the following to be matched
*.mp3 *.MP3 *.Mp3 and *.mP3
using a single, 'wildcard' pattern-match something like:
ls *.[Mm][Pp]3
... obviously this doesn't work (else I wouldn't be posing the question) - where is my syntax wrong?
LJS
10 More Discussions You Might Find Interesting
1. Programming
Using a makefile I want to compile all .c files in the current directory without specifying them directly and then link their associated .o files into a library.
How do I do this ?
Thanks. (1 Reply)
Discussion started by: rcscott
1 Replies
2. UNIX for Dummies Questions & Answers
Hiya,
I want to list all files missing a certain pattern and/or filename pattern on the entire drive.
In DOS I would type (for instance):
dir \t*.doc /s /a
which should find all doc files whose filename starts with `t'.
How do I do that in a unix shell? Can it be done w/ ls at... (5 Replies)
Discussion started by: ropers
5 Replies
3. UNIX for Dummies Questions & Answers
I'm trying to delete lines from a large text file using VI.
Every line that I am wanting to delete start with 'S' - all others do not. (A list of users)
I've tried using * but doesn't seem to like it...any ideas...
Doesn't have to be VI - but I'm better with VI than sed/awk. (8 Replies)
Discussion started by: peter.herlihy
8 Replies
4. UNIX for Dummies Questions & Answers
when writing a shell script (bourne) and using a unix command like 'ls' is there anything special you need to do to use a wildcard (like *)? (3 Replies)
Discussion started by: benu302000
3 Replies
5. UNIX for Dummies Questions & Answers
ok, I'm trying to write a script file that lists files with specific elements in the name into a txt file, it looks like this
ls s*.dat > file_names.txt
can't figure out whats wrong with that line, any ideas?
thanks in advance (10 Replies)
Discussion started by: benu302000
10 Replies
6. UNIX for Dummies Questions & Answers
Hi All
Please excuse another straightforward question. When creating a tar archive from a directory I am attempting to use wildcards to eliminate certain filetypes (otherwise the archive gets too large). So I am looking for something along these lines.
tar -cf archive.tar * <minus all *.rst... (5 Replies)
Discussion started by: C3000
5 Replies
7. UNIX for Dummies Questions & Answers
Is there some rule about using wildcards in path? Say I want to create a file, but one of the directories in the path is called 1433d.default and on different machines it will be called <some other string>.default
touch ~/Library/Application/*.default/myfile
In theory I thought that... (5 Replies)
Discussion started by: glev2005
5 Replies
8. UNIX for Advanced & Expert Users
These 2 websites do a GREAT job of explaining different types of wildcards. I learned about the categories of characters which I never knew about at all.
GNU/Linux Command-Line Tools Guide - Wildcards
GREP (1 Reply)
Discussion started by: cokedude
1 Replies
9. Shell Programming and Scripting
Hello:
I have a very basic question. I'd like to select all files except for one file. For example, say I want to move all of the files in my current directory to a subdirectory called archive, I would use mv ./* archive/ But what if I want to move all files except for README.txt? Is there an... (19 Replies)
Discussion started by: Danny.Boy
19 Replies
10. UNIX for Dummies Questions & Answers
Hi, I'm new to Unix, but have a directory which has many files in it, well over 1000. The files are called :
M07GO.STOPE0001
M07GO.STOPE0002
M07GO.STOPE0003
M07GO.STOPE0004
etc...
I would like to rename them to the following :
M070001.bin
M070002.bin
M070003.bin
M070004.bin
etc....... (4 Replies)
Discussion started by: rnmuk
4 Replies
FNMATCH(3) 1 FNMATCH(3)
fnmatch - Match filename against a pattern
SYNOPSIS
bool fnmatch (string $pattern, string $string, [int $flags])
DESCRIPTION
fnmatch(3) checks if the passed $string would match the given shell wildcard $pattern.
PARAMETERS
o $pattern
- The shell wildcard pattern.
o $string
- The tested string. This function is especially useful for filenames, but may also be used on regular strings. The average user
may be used to shell patterns or at least in their simplest form to '?' and '*' wildcards so using fnmatch(3) instead of
preg_match(3) for frontend search expression input may be way more convenient for non-programming users.
o $flags
- The value of $flags can be any combination of the following flags, joined with the binary OR (|) operator.
A list of possible flags for fnmatch(3)
+-------------+---------------------------------------------------+
| $Flag | |
| | |
| | Description |
| | |
+-------------+---------------------------------------------------+
| | |
|FNM_NOESCAPE | |
| | |
| | Disable backslash escaping. |
| | |
| | |
|FNM_PATHNAME | |
| | |
| | Slash in string only matches slash in the given |
| | pattern. |
| | |
| | |
| FNM_PERIOD | |
| | |
| | Leading period in string must be exactly matched |
| | by period in the given pattern. |
| | |
| | |
|FNM_CASEFOLD | |
| | |
| | Caseless match. Part of the GNU extension. |
| | |
+-------------+---------------------------------------------------+
RETURN VALUES
Returns TRUE if there is a match, FALSE otherwise.
CHANGELOG
+--------+---------------------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+---------------------------------------------------+
| 5.3.0 | |
| | |
| | This function is now available on Windows plat- |
| | forms. |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
Checking a color name against a shell wildcard pattern
<?php
if (fnmatch("*gr[ae]y", $color)) {
echo "some form of gray ...";
}
?>
NOTES
Warning
For now, this function is not available on non-POSIX compliant systems except Windows.
SEE ALSO
glob(3), preg_match(3), sscanf(3), printf(3), sprintf(3).
PHP Documentation Group FNMATCH(3)