P4 Server wildcards

For commands that operate on sets of files, P4 Server supports two wildcards.

Wildcard Description

*

Matches anything except slashes. Matches only within a single directory. Case sensitivity depends on your platform.

...

Matches anything including slashes. Matches recursively (everything in and below the specified directory).

P4 Server wildcards can be used with local or P4 Server syntax, as in the following examples:

Expression Matches

J*

Files in the current directory starting with J.

*/help

All files called help in current subdirectories.

./...

All files under the current directory and its subdirectories.

./....c

All files under the current directory and its subdirectories, that end in .c.

/usr/bruno/...

All files under /usr/bruno.

//bruno_ws/...

All files in the workspace or depot that is named bruno_ws.

//depot/...

All files in the depot named depot.

//...

All files in all depots.

The * wildcard is expanded locally by the operating system before the command is sent to the P4 Server. To prevent the local operating system from expanding the * wildcard, enclose it in quotes or precede it with a backslash.

The ... wildcard cannot be used with the p4 add command. The ... wildcard is expanded by the P4 Server, and, because the service cannot determine which files are being added, it can’t expand the wildcard. The * wildcard can be used with p4 add, because it is expanded by the operating system shell and not by P4 Server.