(CommandList children: [ (FuncDef name: print_version_string body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (SimpleCommand words: [{(grep)} {(GIT)} {(DQ ($ VSub_Number '$1'))}] redirects: [(Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) ] action: [ (SimpleCommand words: [{(read)} {(ver)}] redirects: [ (Redir op: <Redir_Less '<'> fd: 16777215 arg_word: {(DQ ($ VSub_Number '$1'))} ) ] ) (Pipeline children: [(C {(echo)} {($ VSub_Name '$ver')}) (C {(tr)} {(-d)} {(SQ <'\\012'>)})] negated: F ) (C {(date)} {(Lit_Other '+') (_) (Lit_Other '%') (Y_) (Lit_Other '%') (m_) (Lit_Other '%') (d)} ) ] spids: [16777215 24] ) ] else_action: [(C {(cat)} {(DQ ($ VSub_Number '$1'))})] spids: [64 74] ) ] spids: [7] ) spids: [3 6] ) (If arms: [ (if_arm cond: [(C {(test)} {($ VSub_Pound '$#')} {(KW_Bang '!') (Lit_Other '=')} {(3)})] action: [ (SimpleCommand words: [ {(echo)} {(DQ ('Usage: gen_version_header.sh <version file> <template> <output file>'))} ] redirects: [(Redir op:<Redir_GreatAnd '1>&'> fd:1 arg_word:{(2)})] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [16777215 89] ) ] spids: [16777215 106] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:version_string) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(print_version_string)} {(DQ ($ VSub_Number '$1'))})] ) left_token: <Left_Backtick '`'> spids: [109 115] ) } spids: [108] ) ] spids: [108] ) (SimpleCommand words: [ {(sed)} {(DQ ('s/%%LIBPCAP_VERSION%%/') ($ VSub_Name '$version_string') (/))} {(DQ ($ VSub_Number '$2'))} ] redirects: [(Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(DQ ($ VSub_Number '$3'))})] ) ] )