如何使用shell脚本处理SVN错误?

如何使用shell脚本处理SVN错误?,svn,shell,Svn,Shell,亲爱的大家, 我试图在shell脚本的帮助下实现svn copy操作。我面临的问题是处理svn错误,如403。下面是关于这个问题的简要说明, 我的SVN结构如下所示: http://localhost/myproj/branches/dev/dev1 /testing/test1 /maintainance/m1 我正试图编写一个shell脚本来完成此任务。 我的Sh

亲爱的大家,
我试图在shell脚本的帮助下实现svn copy操作。我面临的问题是处理svn错误,如403。下面是关于这个问题的简要说明,
我的SVN结构如下所示:

http://localhost/myproj/branches/dev/dev1
                                /testing/test1
                                /maintainance/m1
我正试图编写一个shell脚本来完成此任务。
我的Shell脚本预期的行为:

Enter the Source url to be copied: http://localhost/myproj/branches/dev/dev1
Enter the new url name:http://localhost/myproj/branches/testing/test2
我不希望我的脚本向用户显示实际的svn错误,如果用户在测试分支中未获得授权,则svn显示403禁止的错误,我只想告诉用户用户没有访问权!!无法复制,请与管理员联系。 是否有可能将svn错误重定向到某个变量,并根据该变量的值向用户显示消息。我想在shell脚本中完成它。。请引导我

提前感谢

Srikanth B使用
2>
重定向您的输出。作为一个非常简单的例子:

#!/bin/ksh
svn copy $1 $2 2>&1 | grep '403 forbidden'
if [[ $? -eq 0 ]]
then
  #The grep command was successful, i.e. '403 forbidden' was in the svn output
  echo No access.
  exit 1
else
  echo Complete
  exit 0
fi
这非常简单,还有一大堆其他问题,特别是完全避免了svn命令产生的任何其他错误,但应该让您了解它是如何工作的


查看Wikibooks的第页,了解有关此操作的更多信息。

使用
2>
重定向输出。作为一个非常简单的例子:

#!/bin/ksh
svn copy $1 $2 2>&1 | grep '403 forbidden'
if [[ $? -eq 0 ]]
then
  #The grep command was successful, i.e. '403 forbidden' was in the svn output
  echo No access.
  exit 1
else
  echo Complete
  exit 0
fi
这非常简单,还有一大堆其他问题,特别是完全避免了svn命令产生的任何其他错误,但应该让您了解它是如何工作的


请查看Wikibooks的第页,以了解有关此操作的更多信息。

非常感谢您及时给出答案。再次感谢。非常感谢你及时的回答。再次感谢。