pathchk(1)

pathchk1

Check pathnames

Usage

pathchk [-pP] pathname ...

Overview

The pathchk utility checks whether each of the specified pathname arguments is valid or portable.

A diagnostic message is written for each argument that:

  • Is longer than PATH_MAX bytes.

  • Contains any component longer than NAME_MAX bytes. (The value of NAME_MAX depends on the underlying file system.)

  • Contains a directory component that is not searchable.

It is not considered an error if a pathname argument contains a nonexistent component as long as a component by that name could be created.

The options are as follows:

-p

Perform portability checks on the specified pathname arguments. Diagnostic messages will be written for each argument that:

  • Is longer than _POSIX_PATH_MAX (255) bytes.

  • Contains a component longer than _POSIX_NAME_MAX (14) bytes.

  • Contains any character not in the portable filename character set (that is, alphanumeric characters, ‘.’, ‘-’ and ‘_’). No component may start with the hyphen (‘-’) character.

-P

In addition to the default or -p checks, write a diagnostic for each argument that:

  • Is empty.

  • Contains a component that starts with a hyphen.

Exit status

The pathchk utility exits 0 on success, and >0 if an error occurs.

Examples

Check whether the names of files in the current directory are portable to other POSIX systems:

find . -exec pathchk -p -- {} +

Releases

135 releases since Mac OS X 10.4; the text changed 1 time.

  1. 10.4–12.2
  2. 12.3–26.5

-P since macOS 12.3.

Standards

The pathchk utility conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

History

A pathchk utility appeared in FreeBSD 5.0.

From file_cmds 479 in macOS 26.5. Parsed by carta from the page's mdoc source.