2016-12-27 260 views
-1
#!/bin/bash 

export folder=`date -d "today - 1 days" '+%Y%m%d'`; 

if filename in /r1/test/med_sms/FDA3A; then 

result= 

if filename = *$folder*; then 

result= mv $filename /r1/test/med_sms/FDA3A/test 

else 

if filename = *$folder*; then 

result= mv $filename /r1/test/med_sms/FDA3A/test 

elif 

done; 

嗨!我试图执行上面的scrpot,但它引发异常为./test1.sh:第11行:语法错误附近的意外令牌`完成'UNIX shell将文件从一个文件夹移动到另一个文件夹

./test1.sh: line 11: `done' 

有人可以帮忙吗?

+0

您应该首先通过http://www.shellcheck.net/运行它 - 它将帮助您解决一系列问题。那么,如果你仍然有问题,你应该回来问一些关于这些具体问题的问题。 –

+0

您好我尝试了shellcheck.net中的脚本,但是我得到了下面的异常#!/ bin/bash export date ='date -d“today - 1 days”'+%Y%m%d''; echo“mv *”$ date“* rocra_directory/rocra_polled/med_sms/FDA3A rocra_directory/rocra_polled/med_sms/FDA3A/test” 例外:++ date -d'today - 1 days'+%Y%m%d +出口日期= 20161226 +日期= 20161226 +回波 'MV * 20161226 * rocra_directory/rocra_polled/med_sms/FDA3A rocra_directory/rocra_polled/med_sms/FDA3A /测试' MV * 20161226 * rocra_directory/rocra_polled/med_sms/FDA3A rocra_directory/rocra_polled/med_sms/FDA3A/test – user7344136

回答

1
$ help if 
if: if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... 
[ else COMMANDS; ] fi 

猛砸if语句结束fi

+0

您好我尝试了一个脚本,但我得到了下面的异常#!/ bin/bash export date ='date -d“today - 1 days”'+%Y%m%d''; echo“mv *”$ date“* rocra_directory/rocra_polled/med_sms/FDA3A rocra_directory/rocra_polled/med_sms/FDA3A/test” 例外:++ date -d'today - 1 days'+%Y%m%d +出口日期= 20161226 +日期= 20161226 +回波 'MV * 20161226 * rocra_directory/rocra_polled/med_sms/FDA3A rocra_directory/rocra_polled/med_sms/FDA3A /测试' MV * 20161226 * rocra_directory/rocra_polled/med_sms/FDA3A rocra_directory/rocra_polled/med_sms/FDA3A/test ....您能否请帮助 – user7344136

1

你不应该使用ìfelif声明的方式,根据你的程序的结构,这应该看起来像:

export folder=`date -d "today - 1 days" '+%Y%m%d'`; 
if filename in /r1/test/med_sms/FDA3A; then 
    result= something_here 
elif filename = *$folder*; then 

    result= mv $filename /r1/test/med_sms/FDA3A/test 

elif filename = *$folder*; then 
    result= mv $filename /r1/test/med_sms/FDA3A/test 

else 
    result = PUT here the last condition 

fi 
+0

HI Nishant ..感谢您的回复.. – user7344136

+0

酷伴侣,如果有帮助请接受答案elif post error for further assistance –

+0

HI Nishant ..感谢您的回复..让我明确提及什么要求..试图将昨天的所有文件电影到另一个文件夹。我的主文件夹是/ r 1/test/med_sms/FDA3A,如果它是昨天的任何文件,那么我需要将该文件电影到/ r1/test/med_sms/FDA3A/test 。你可以帮助解决这个问题。我也尝试了你的建议和我得到这个异常./test2.sh:行14:语法错误附近意想不到的标记'fi' ./test2.sh:第14行:'fi' – user7344136

相关问题