Function: eshell-pred-file-size
eshell-pred-file-size is a byte-compiled function defined in
em-pred.el.gz.
Signature
(eshell-pred-file-size)
Documentation
Return a predicate to test whether a file is of a given size.
Source Code
;; Defined in /usr/src/emacs/lisp/eshell/em-pred.el.gz
(defun eshell-pred-file-size ()
"Return a predicate to test whether a file is of a given size."
(let ((quantum 1) qual amount)
(when (memq (downcase (char-after)) '(?k ?m ?p))
(setq qual (downcase (char-after)))
(cond
((eq qual ?k)
(setq quantum 1024))
((eq qual ?m)
(setq quantum (* 1024 1024)))
((eq qual ?p)
(setq quantum 512)))
(forward-char))
(setq qual (eshell-get-comparison-modifier-argument))
(setq amount (* (or (eshell-get-numeric-modifier-argument)
(error "Invalid file size modifier `L'"))
quantum))
(lambda (file)
(when-let* ((attrs (eshell-file-attributes file)))
(funcall qual (file-attribute-size attrs) amount)))))