{
char buf[PATH_MAX];
char *p;
int ch;
if (argc == 2) {
while ((ch = getopt(argc, argv, "")) != -1)
if ((p = realpath(argv[1], buf)) == NULL)
switch(ch) {
err(1, "%s", buf);
case '?':
} else
default:
usage();
}
argc -= optind;
argv += optind;
if (argc < 1)
(void)printf("%s\n", p);
do {
if ((p = realpath(*argv, buf)) == NULL)
err(1, "%s", *argv);
else
} while (*++argv != NULL);
exit(0);
usage(void)
(void)fprintf(stderr, "usage: realpath path\n");
(void)fprintf(stderr, "usage: realpath path [...]\n");
exit(1);
.Sh SYNOPSIS
.Nm
.Ar path
.Op Ar ...
.Sh DESCRIPTION
The