HFS: File masks

From rejetto wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

What is it?

A file mask denotes a set of files. It is usually something like this: *.jpg;*.gif. This example denotes any jpeg and gif files. Remember that the characters used in filenames are not case sensitive: so *.jpg and *.JPG refer to exactly the same set of files.

How does it work?

The example above shows a double file mask. It has two atoms separated by the semicolon: *.jpg and *.gif. The semicolon is used to merge multiple masks: it is a special character. There are only three special characters in file masks: ; * and ?.

The star (*)

The star (also called "asterisk") stands for any string of characters. If the mask contains only the star, it matches ANY file.

If you put an A before the star A*, it matches any file starting with an A.

If you put an A after the star *A, it matches any file ending with an A.

A*B matches any file starting with an A and ending with a B. The example above shows *.jpg : it matches any file ending with .jpg (that is, jpeg images). jpeg files are relatively unusual because they sometimes end with .jpeg and more rarely with .jpe . (The part of a filename that comes after the period is called the file "extension", and is normally limited to three characters.) You could use the mask .jp* to match all types of jpeg files.

The star also matches the null string: A*.jpg matches files like A1.jpg , Adfgg.jpg but also A.jpg.

The question mark (?)

This stands for a single character. Something like A?B matches any filename that is three characters long and starts with an A and ends with a B. The length is fixed to three characters because ? can be replaced by only one character. Thus the ? does not match the null string as the * does.


Inverting the logic (\)

So you want to hide filetypes, instead of showing specific filetypes?

Insert a backslash \ before *.ext to achieve opposite logic with the filter, and hide the filetypes you do not want visible to users. E.g \*.db;*.ini