0
我有一个python脚本。这只是我转换到我的shell脚本,对不起,我只是这个语言的新手。错误是:SyntaxError:无效语法Python
File "chkrpm.py", line 19
if(rc != 0):
^
SyntaxError: invalid syntax
我不知道什么是错的。这是我的shell脚本
retval=0
for i in $(cat /var/tools/tools/newrpms.txt)
do
ls /var/patchbundle/rpms/ | grep $i
if [ $? != 0 ]
then
echo "$i NOT FOUND!"
retval=255
fi
done
exit $retval
这是我的python转换。只关注错误方面。
import package, sys, os, subprocess
path = '/var/tools/tools/newrpms.txt'
newrpms = open(path, "w")
fds = newrpms.readline()
newrpms.close
def checkrc(rc):
if(rc != 0):
sys.exit(rc)
cmd = package.Errata()
retval=0
for i in newrpms:
rc = cmd.execute("ls /var/patchbundle/rpms/ | grep %newrpms ")
if(rc != 0):
cmd.logprint ("%s not found !" % i)
retval = 255
checkrc(rc)
我的代码有什么问题。这是适合我的bash脚本?
当我试图按照以下错误所有的建议中发现:
File "chkrpm.py", line 19
echo("%s not found !" % i)
^
SyntaxError: invalid syntax
注意:'newrpms.close'不会做任何事情。如果你想关闭文件,你需要调用函数:'newrpms.close()':-)。 – mgilson 2014-11-25 03:31:37
您正在以写入模式打开文件并尝试从中读取文件。将open改为'newrpms = open(path,“r”)' – nu11p01n73R 2014-11-25 03:51:34
尝试使用'print'而不是'echo' – 2014-11-25 04:11:30