ver.2をつくった。変更点は
- hbkファイルの数が10個以上でも対応できるようにした
- つくりたいのと同名のrootファイルが存在するときに上書きしてもよいか確認するようにした
ver.3までのto doは、Run numberが002とかのファイルについても対応できるようにすること。(相変わらずK本研でしか使えないスクリプトです・・・)
#!/bin/bash
./ELE_Analyzer $1
declare -i i #iは整数とする
i=1
while [ -f $1_00$i.hbk ]; #ファイルが存在する番号までループを回す
do
if [ -f $1_00$i.root ];#rootファイルが存在するときに消していいか許可を求める
then
echo "$1_00$i.root exists. Overwrite?[y/n]"
read ANSWER
if [ $ANSWER = "y" ];
then
rm $1_00$i.root
h2root $1_00$i.hbk
else
echo "Operation canceled."
break
fi
else
h2root $1_00$i.hbk
fi
rm $1_00$i.hbk #つくったHBKファイルを消す
source="$source $1_00$i.root" #ROOTファイルを結合するときの元となるファイルを集めた文字列
i=$i+1
done
#ファイルが10個以上に分割されたときはこっちのループも回す
#_001を_010などとしただけで中身は一緒
while [ -f $1_0$i.hbk ];
do
if [ -f $1_0$i.root ];
then
echo "$1_0$i.root exists. Overwrite?[y/n]"
read ANSWER
if [ $ANSWER = "y" ];
then
rm $1_0$i.root
h2root $1_0$i.hbk
else
echo "Operation canceled."
break
fi
else
h2root $1_0$i.hbk
fi
rm $1_0$i.hbk
source="$source $1_0$i.root"
i=$i+1
done
#rootファイルを結合する
if [ -f $1.root ];#rootファイルが存在するときに消していいか許可を求める
then
echo "$1.root exists. Overwrite?[y/n]"
read ANSWER
if [ $ANSWER = "y" ];
then
rm $1.root
hadd $1.root $source
rm $source #つくったROOTファイルを消す
else
echo "Operation canceled."
break
fi
else
hadd $1.root $source
rm $source #つくったROOTファイルを消す
fi
最終更新:2011年10月25日 21:06