(command.CommandList
  children: [
    (C {(rm)} {(-f)} {(tags)} {(tags.tmp)} {(tags.cfiles)} {(tags.sfiles)} {(tags.hfiles)})
    (command.Pipeline
      children: [
        (C {(sed)} {(-e)} {(DQ ('s, machine/, ../../include/,g'))} {(-e)} 
          {(SQ (Token id:Id.Lit_Chars val:'s,[a-z][^/    ]*/\\.\\./,,g' span_id:136))} {(.depend)}
        )
        (C {(awk)} 
          {
            (SQ (Token id:Id.Lit_Chars val:'{\n' span_id:146) 
              (Token
                id: Id.Lit_Chars
                val: '\t\tfor (i = 1; i <= NF; ++i) {\n'
                span_id: 147
              ) (Token id:Id.Lit_Chars val:'\t\t\tt = substr($i, length($i) - 1)\n' span_id:148) 
              (Token id:Id.Lit_Chars val:'\t\t\tif (t == ".c")\n' span_id:149) (Token id:Id.Lit_Chars val:'\t\t\t\tcfiles[$i] = 1;\n' span_id:150) 
              (Token id:Id.Lit_Chars val:'\t\t\telse if (t == ".h")\n' span_id:151) (Token id:Id.Lit_Chars val:'\t\t\t\thfiles[$i] = 1;\n' span_id:152) 
              (Token id:Id.Lit_Chars val:'\t\t\telse if (t == ".s")\n' span_id:153) (Token id:Id.Lit_Chars val:'\t\t\t\tsfiles[$i] = 1;\n' span_id:154) 
              (Token id:Id.Lit_Chars val:'\t\t}\n' span_id:155) (Token id:Id.Lit_Chars val:'\t};\n' span_id:156) (Token id:Id.Lit_Chars val:'\tEND {\n' span_id:157) 
              (Token id:Id.Lit_Chars val:'\t\tfor (i in cfiles)\n' span_id:158) (Token id:Id.Lit_Chars val:'\t\t\tprint i > "tags.cfiles";\n' span_id:159) 
              (Token id:Id.Lit_Chars val:'\t\tfor (i in sfiles)\n' span_id:160) (Token id:Id.Lit_Chars val:'\t\t\tprint i > "tags.sfiles";\n' span_id:161) 
              (Token id:Id.Lit_Chars val:'\t\tfor (i in hfiles)\n' span_id:162) (Token id:Id.Lit_Chars val:'\t\t\tprint i > "tags.hfiles";\n' span_id:163) 
              (Token id:Id.Lit_Chars val:'\t}' span_id:164)
            )
          }
        )
      ]
      negated: F
    )
    (C {(ctags)} {(-t)} {(-d)} {(-w)} 
      {
        (command_sub
          left_token: (Token id:Id.Left_Backtick val:'`' span_id:176)
          command_list: 
            (command.CommandList
              children: [(C {(cat)} {(tags.cfiles)} {(tags.hfiles)} {(tags.sfiles)})]
            )
        )
      }
    )
    (command.Pipeline
      children: [
        (C {(egrep)} 
          {
            (DQ ('^ENTRY') (Id.Lit_Other '\\') ('(.*') (Id.Lit_Other '\\') (')|^ALTENTRY') 
              (Id.Lit_Other '\\') ('(.*') (Id.Lit_Other '\\') (')')
            )
          } 
          {
            (command_sub
              left_token: (Token id:Id.Left_Backtick val:'`' span_id:202)
              command_list: (command.CommandList children:[(C {(cat)} {(tags.sfiles)})])
            )
          }
        )
        (command.Simple
          words: [
            {(sed)}
            {
              (DQ ('s;') (Id.Lit_Other '\\') ('([^:]*') (Id.Lit_Other '\\') ('):') (Id.Lit_Other '\\') 
                ('([^(]*') (Id.Lit_Other '\\') (')(') (Id.Lit_Other '\\') ('([^, )]*') (Id.Lit_Other '\\') (')') (Id.Lit_Other '\\') 
                ('(.*') (Id.Lit_Other '\\') (');') (Id.Lit_Other '\\') ('3\t') (Id.Lit_Other '\\') ('1\t/^') (Id.Lit_Other '\\') 
                ('2(') (Id.Lit_Other '\\') (3) (Id.Lit_Other '\\') (4) (Id.Lit_Other '$') ('/;')
              )
            }
          ]
          redirects: [
            (redir.Redir
              op: (Token id:Id.Redir_DGreat val:'>>' span_id:248)
              fd: -1
              arg_word: {(tags)}
            )
          ]
        )
      ]
      negated: F
    )
    (C {(mv)} {(tags)} {(tags.tmp)})
    (command.Simple
      words: [{(sort)} {(-u)} {(tags.tmp)}]
      redirects: [
        (redir.Redir op:(Token id:Id.Redir_Great val:'>' span_id:265) fd:-1 arg_word:{(tags)})
      ]
    )
    (C {(rm)} {(tags.tmp)} {(tags.cfiles)} {(tags.sfiles)} {(tags.hfiles)})
  ]
)