Applied patch from Christophe Boyanique to add -i support to rm.

This commit is contained in:
Mark Whitley
2001-03-13 00:40:19 +00:00
parent 53737c5421
commit e0bf91d7c6
11 changed files with 101 additions and 0 deletions

View File

@@ -33,11 +33,21 @@
static int recursiveFlag = FALSE;
static int forceFlag = FALSE;
#ifdef BB_FEATURE_RM_INTERACTIVE
static int interactiveFlag = FALSE;
#endif
static const char *srcName;
static int fileAction(const char *fileName, struct stat *statbuf, void* junk)
{
#ifdef BB_FEATURE_RM_INTERACTIVE
if (interactiveFlag == TRUE) {
printf("rm: remove `%s'? ", fileName);
if (ask_confirmation() == 0)
return (TRUE);
}
#endif
if (unlink(fileName) < 0) {
perror_msg("%s", fileName);
return (FALSE);
@@ -52,6 +62,13 @@ static int dirAction(const char *fileName, struct stat *statbuf, void* junk)
perror_msg("%s", fileName);
return (FALSE);
}
#ifdef BB_FEATURE_RM_INTERACTIVE
if (interactiveFlag == TRUE) {
printf("rm: remove directory `%s'? ", fileName);
if (ask_confirmation() == 0)
return (TRUE);
}
#endif
if (rmdir(fileName) < 0) {
perror_msg("%s", fileName);
return (FALSE);
@@ -79,6 +96,14 @@ extern int rm_main(int argc, char **argv)
break;
case 'f':
forceFlag = TRUE;
#ifdef BB_FEATURE_RM_INTERACTIVE
interactiveFlag = FALSE;
#endif
break;
case 'i':
#ifdef BB_FEATURE_RM_INTERACTIVE
interactiveFlag = TRUE;
#endif
break;
case '-':
stopIt = TRUE;