cp: add symlink deref flags -H and -L for cp and mv

This commit is contained in:
Tai Chi Minh Ralph Eastwood
2015-02-09 20:56:23 +00:00
committed by sin
parent 360a63769c
commit af8be7f92c
7 changed files with 28 additions and 24 deletions

View File

@@ -9,7 +9,7 @@
#include "../util.h"
void
enmasse(int argc, char *argv[], int (*fn)(const char *, const char *))
enmasse(int argc, char *argv[], int (*fn)(const char *, const char *, char), char ff)
{
char *buf, *dir;
int i, len;
@@ -18,7 +18,7 @@ enmasse(int argc, char *argv[], int (*fn)(const char *, const char *))
size_t dlen;
if (argc == 2 && !(stat(argv[1], &st) == 0 && S_ISDIR(st.st_mode))) {
fnck(argv[0], argv[1], fn);
fnck(argv[0], argv[1], fn, ff);
return;
} else {
dir = (argc == 1) ? "." : argv[--argc];
@@ -35,7 +35,7 @@ enmasse(int argc, char *argv[], int (*fn)(const char *, const char *))
eprintf("%s/%s: filename too long\n", dir,
basename(argv[i]));
}
fnck(argv[i], buf, fn);
fnck(argv[i], buf, fn, ff);
}
free(buf);
}