This is an old revision of the document!
Masks
To use the following features of WinSCP you need to specify a mask (wildcard) to select files (or other things):
- Text file mask for text mode transfers.
- Ignore mask for transfers.
- Selecting/unselecting files by file mask.
- Defining autoselection rule for transfer settings preset.
- Defining autoselection mask for editors.
- Various script commands.
Advertisement
You can specify several masks separated by semicolon (;
) or comma (,
).
When specifing the mask you can use following patterns:
Pattern | Meaning | Example |
---|---|---|
* |
Matches any number (including zero) of arbitrary characters. | *.doc; about*.html |
? |
Matches exactly one arbitrary character. | photo????.jpg |
[abc] |
Matches one character from the set. | index_[abc].html |
[a-z] |
Matches one character from the range. | index_[a-z].html |
>size |
Matches files (never directory) larger than size (K , M and G units can be used). This rule must be used after the file name mask (if any). |
*.bin>1M |
<size |
Matches files smaller than size . |
<1G |
All other characters are treated literally.
When the mask selects files and it makes sense to select them based on directory, you can extend the mask with a path mask. You should separate the path mask from the filename mask by a slash. For a relative path mask it makes no difference whether you use back (\
) or forward slashes (/
); the mask will always work for both local and remote paths. For example, the exclude mask */public_html/*.bak
will exclude backup files both in D:\Documents\public_html
and /home/martinp/public_html
. If you want to match directories only, add a slash at the end of the mask.
Particularly when specifing an include mask for transfers, bear in mind that it is applied to directories as well, so that *.bak
will only match backup files located in the current directory (unless you happen to have a subdirectory whose own name ends in “.bak”, in which case it will be applied to all backup files in there too).
Advertisement
The mask */
matches any directory. For example to transfer only HTML files located in any directory, use the include mask */; *.html
.
For convenience, a mask *.*
is exception matching any file, even if its name does not include any dot.