Function: eshell-remove-entries

eshell-remove-entries is a byte-compiled function defined in em-unix.el.gz.

Signature

(eshell-remove-entries FILES &optional TOPLEVEL)

Documentation

Remove all of the given FILES, perhaps interactively.

Source Code

;; Defined in /usr/src/emacs/lisp/eshell/em-unix.el.gz
(defun eshell-remove-entries (files &optional toplevel)
  "Remove all of the given FILES, perhaps interactively."
  (while files
    (if (string-match "\\`\\.\\.?\\'"
		      (file-name-nondirectory (car files)))
	(if toplevel
	    (eshell-error "rm: cannot remove `.' or `..'\n"))
      (if (and (file-directory-p (car files))
	       (not (file-symlink-p (car files))))
	  (progn
	    (if em-verbose
		(eshell-printn (format-message "rm: removing directory `%s'"
					       (car files))))
	    (unless
		(or em-preview
		    (and em-interactive
			 (not (y-or-n-p
			       (format-message "rm: remove directory `%s'? "
					       (car files))))))
	      (eshell-funcalln 'delete-directory (car files) t t)))
	(if em-verbose
	    (eshell-printn (format-message "rm: removing file `%s'"
					   (car files))))
	(unless (or em-preview
		    (and em-interactive
			 (not (y-or-n-p
			       (format-message "rm: remove `%s'? "
					       (car files))))))
	  (eshell-funcalln 'delete-file (car files) t))))
    (setq files (cdr files))))