shell script lsco_restore.sh

#!/bin/ksh

USAGE="<unknown>"
CMD="<unknown>"

usage() {
        echo "usage: $CMD $USAGE"
        exit 1
}

#### no spaces 
CMD="${0##*/}"
USAGE="<lsco_files.tar>"

(($# != 1 )) && usage

## echo number == return 
readY()
{
    read answer

    if [ $answer == "y" ]
    then
        return 0
    else
        return 1	
    fi
}
checkOutFile()
{
    muckup $1 > /dev/null
    return 0
}

g_init_check=$(lsco)

haveCheckOut()
{
# ksh no local variable
 for i_check in ${g_init_check[@]}
        do
	   if [[ $i_check == $1 ]]
           then
               echo file  have checkout
	       return 0
	   fi
        done

    return 1

}

c_view=$(cleartool pwv -s)

#if [[ $c_view =~ "NONE" ]]
if [[ $c_view == *NONE* ]]
then
	echo "not in the view"
	exit 1
fi

lsco_view=$(echo $1|sed -r 's/.*o_(.+)_.*/\1/')

if [[ $c_view == $lsco_view ]]
then
	echo "same view continue checkout [y]"
	readY || exit 1

fi

check_out=$(tar -tPf $1)


for file in ${check_out[@]}
        do
	haveCheckOut $file

        if [[ $? -eq 0 ]]
  	then
	    echo "ignore $file";
            continue;
        fi	

	echo "muckup file $file [y]"
	readY ||{ echo ignore $file; continue;}
	checkOutFile $file

	if [[ $? -ne 0 ]]
        then
            echo muckup failed
	    exit 1
	fi
done

exit 0


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值