either through a command script  or directly ,  root -b  merge_picoDST_TT.C\(\"samplepico.list\",\"sumpico.root\"\)  merge the chains named T in the considered root files, and put the global result in sumpico.root

cat command_mergepico.sh
#! /bin/csh
root -b  merge_picoDST_TT.C\(\"samplepico.list\",\"sumpico.root\"\)
echo ' merge_picoDST_TT.C  done'


void merge_picoDST_TT(char* LisFile = "pdst_input.list", char* SumFile = "pdst_sum.root")
{
  string filename;
  TChain* T = new TChain("T");
  ifstream fin(LisFile);
  while (fin >> filename)
    {
      cout << "Add file " << filename << endl;
      T->AddFile(filename.c_str());
    }
  fin.close();
  T->Merge(SumFile);
}

-------------------------

[jouan@rcas2067 merge_pico]$ sh command_mergepico.sh
  *******************************************
  *                                         *
  *        W E L C O M E  to  R O O T       *
  *                                         *
  *   Version   5.17/01      29 June 2007   *
  *                                         *
  *  You are welcome to visit our Web site  *
  *          http://root.cern.ch            *
  *                                         *
  *******************************************

Compiled on 30 November 2009 for linux with thread support.

CINT/ROOT C/C++ Interpreter version 5.16.27, Oct 25, 2007
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0]
Processing merge_picoDST_TT.C("samplepico.list","sumpico.root")...
Add file /direct/phenix+u/workarea/jouan/samples_root_files/picodstobj_Muon_500GeV_pro86-0000336436-9001.root
Add file /direct/phenix+u/workarea/jouan/samples_root_files/picodstobj_Muon_500GeV_pro86-0000337121-9001.root
Warning in <TClass::TClass>: no dictionary for class PHObject is available
Warning in <TClass::TClass>: no dictionary for class SyncObjectv2 is available
Warning in <TClass::TClass>: no dictionary for class SyncObjectv1 is available
Warning in <TClass::TClass>: no dictionary for class SyncObject is available
Warning in <TClass::TClass>: no dictionary for class TrigLvl1v3 is available
Warning in <TClass::TClass>: no dictionary for class TrigLvl1v2 is available
Warning in <TClass::TClass>: no dictionary for class TrigLvl1 is available
Warning in <TClass::TClass>: no dictionary for class RunHeaderv3 is available
Warning in <TClass::TClass>: no dictionary for class RunHeaderv2 is available
Warning in <TClass::TClass>: no dictionary for class RunHeader is available
Warning in <TClass::TClass>: no dictionary for class PdbCalBankSavev1 is available
Warning in <TClass::TClass>: no dictionary for class PdbCalBankSave is available
Warning in <TClass::TClass>: no dictionary for class TrigRunLvl1v3 is available
Warning in <TClass::TClass>: no dictionary for class TrigRunLvl1 is available
Warning in <TClass::TClass>: no dictionary for class TrigRunLvl2v3 is available
Warning in <TClass::TClass>: no dictionary for class TrigRunLvl2 is available
Warning in <TClass::TClass>: no dictionary for class FlagSavev1 is available
Warning in <TClass::TClass>: no dictionary for class FlagSave is available
Warning in <TClass::TClass>: no dictionary for class MWGInclusiveNanoCutsv2 is available
Warning in <TClass::TClass>: no dictionary for class PHInclusiveNanoCuts is available
Warning in <TClass::TClass>: no dictionary for class DiMuonContainer_v1 is available
Warning in <TClass::TClass>: no dictionary for class DiMuonContainer is available
Warning in <TClass::TClass>: no dictionary for class DiMuon_v1 is available
Warning in <TClass::TClass>: no dictionary for class DiMuon is available
root [1] .q
 merge_picoDST_TT.C  done