RUNFOR(1): run commands for input lines matching expressions
__________________________________________________
USAGE
usage: runfor [-Dnuv] {expr cmd}
-D: debug
-n: dry run (don't run any command)
-u: don't use unix out
-v: verbose
DESCRIPTION
Runfor takes pairs of expressions and commands as arguments and
reads input lines. For each input line it runs the command with
the first matching expression. Expressions are written like in
sre(2). The command strings given may contain back-references of
the form \0, \1, ... that are replaced with the matched string or
substring.
If further input lines matching the expression for a given
command are received while the command is running, they are
discarded.
EXAMPLE
Receive OSX events and (1) print those that contain 'apple' and
(2) for paths of the form '/u/*/...' print the second component
of the path.
% osev | runfor apple 'echo \0' '^/u/[^/]+/' 'echo \1'
Run Lgo fmt on directories under /u/gosrc/ as they have their
files changed:
% osenv | runfor '^/u/gosrc/.*' 'Lgo fmt \0'
SOURCE
+o /zx/sys/src/clive/cmd/runfor
__________________________________________________
User's manual. Section 1. Copyright © LSUB 2014-2016