chmod: Recurse also chmod's directories.
This commit is contained in:
parent
f7617fce47
commit
53fe775de9
|
@ -92,8 +92,8 @@ Each MODE is of the form '[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+'.
|
|||
(m (if xecutable? (cons (make-chmodifier 'o '- '(X)) m) m)))
|
||||
(values m files)))
|
||||
(else (values (parse-chmodifiers (car files)) (cdr files))))
|
||||
(let ((files (if (option-ref options 'recursive #f) (append-map find-files files)
|
||||
files)))
|
||||
(for-each (cut apply-chmodifiers <> modifiers) files)))))))
|
||||
(let ((files (if (not (option-ref options 'recursive #f)) files
|
||||
(append-map (cut find-files <> #:directories? #t) files))))
|
||||
(for-each (cut apply-chmodifiers <> modifiers) (reverse files))))))))
|
||||
|
||||
(define main chmod)
|
||||
|
|
|
@ -517,7 +517,7 @@ end of a line; by itself it won't match the terminating newline of a line."
|
|||
program o))))))
|
||||
|
||||
(define (apply-chmodifiers file modifiers)
|
||||
(let ((mode (chmodifiers->mode modifiers (warn 'file-mode(stat:mode (lstat file))))))
|
||||
(let ((mode (chmodifiers->mode modifiers (stat:mode (lstat file)))))
|
||||
((@ (guile) chmod) file mode)))
|
||||
|
||||
(define (chmodifier-numeric-mode o executable?)
|
||||
|
|
Loading…
Reference in New Issue