我正在写一个ksh来检查代码并通过xenv setup设置编译变量。这就是我的剧本当下的样子 -
#!/usr/bin/ksh
logname=$LOGNAME
homedir="$HOME/${logname}-SVN-Dev/pkgroot"
#Create directory <username>-SVN-Dev to contain copied code.
if [ -z "$logname" ]
then
logname=`/usr/ucb/whoami`
fi
RunCmd "rm -rf $homedir"
RunCmd "mkdir -p $homedir"
## Some code to checkout code
cd $HOME
echo "setenv PKGROOT $homedir">>$HOME/.cshrc
echo "setenv DEVROOT $homedir/src">>$HOME/.cshrc
source $HOME/.cshrc
RunCmd "/xenv/xenv -L -i $homedir/My.env $homedir;"
make -f project.mk createmakefile
上面的xenv切换shell并进入一个新的提示符ia_cross:并且我的shell退出而不执行“make -f project.mk createmakefile”命令。
我尝试在make和xenv之间放置一个管道,但这并没有解决这个问题。任何建议都会有所帮助吗?
答案 0 :(得分:0)
在脚本中使用以下命令,
echo "make -f project.mk createmakefile" | /xenv/xenv -c -i $homedir/My.env $homedir;