(command.CommandList children: [ (command.Simple words: [{<Id.Lit_Colon ':'>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<keywords>})] do_fork: T ) (command.Simple words: [{<Id.Lit_Colon ':'>}] redirects: [(redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<rcsid>})] do_fork: T ) (command.Pipeline children: [ (C {<svn>} {<list>} {<-R>}) (C {<grep>} {<-v>} {(SQ <'/$'>)}) (command.WhileUntil keyword: <Id.KW_While while> cond: (condition.Shell commands: [(command.Sentence child:(C {<read>} {<f>}) terminator:<Id.Op_Semi _>)] ) body: (command.DoGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Pipeline children: [ (C {<svn>} {<proplist>} {<-v>} {($ Id.VSub_DollarName '$f')}) (C {<grep>} {<-q>} {(SQ <'FreeBSD=%H'>)}) ] negated: F ) (command.ControlFlow token:<Id.ControlFlow_Continue continue>) ] ) (command.Simple words: [ {<egrep>} {<-l>} {(SQ <'^(#|\\.\\\\"|/\\*)[[:space:]]+\\$FreeBSD[:\\$]'>)} {($ Id.VSub_DollarName '$f')} ] redirects: [ (redir op: <Id.Redir_DGreat '>>'> loc: (redir_loc.Fd fd:1) arg: {<keywords>} ) ] do_fork: T ) (command.Simple words: [ {<egrep>} {<-l>} {(SQ <'__RCSID\\("\\$FreeBSD[:\\$]'>)} {($ Id.VSub_DollarName '$f')} ] redirects: [(redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<rcsid>})] do_fork: T ) ] ) ) ] negated: F ) (command.Pipeline children: [ (C {<sort>} {<-u>} {<keywords>} {<rcsid>}) (C {<xargs>} {<perl>} {<-n>} {<-i>} {<-e>} { (SQ <'\n'> <'\t$strip = $ARGV if /\\$(Id|OpenBSD):.*\\$/;\n'> <'\tprint unless (($strip eq $ARGV || /__RCSID/) && /\\$FreeBSD[:\\$]/);\n'> ) } ) ] negated: F ) ] )