(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:tempfile) op: assign_op.Equal rhs: {(DQ <'/tmp/available.'> ($ Id.VSub_Dollar '$$'))} spids: [11] ) ] ) (C {<trap>} {(DQ <'rm -f '> ($ Id.VSub_DollarName '$tempfile'))} {<EXIT>}) (command.Simple words: [{<cat>}] redirects: [ (redir op: <Id.Redir_DLess '<<'> loc: (redir_loc.Fd fd:0) arg: (redir_param.HereDoc here_begin: {(SQ <EOF>)} here_end_span_id: 45 stdin_parts: [ <' { sum += $4 }\n'> <'END { mb = sum / 1024\n'> <' gb = mb / 1024\n'> <' printf "%.0f MB (%.2fGB) of available disk space\\n", mb, gb\n'> <' }\n'> ] ) ) (redir op: <Id.Redir_Great '>'> loc: (redir_loc.Fd fd:1) arg: {($ Id.VSub_DollarName '$tempfile')} ) ] do_fork: T ) (command.Pipeline children: [(C {<df>} {<-k>}) (C {<awk>} {<-f>} {($ Id.VSub_DollarName '$tempfile')})] negated: F ) (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>}) ] )