我有一个基本脚本,我想检查每个目录,子目录和以root开头的文件,如果文件以.sh结尾,它应该解析文件中的字符串。这是代码:
for root, dirs, files in os.walk("/"):
for file in files:
if file.endswith(".sh"):
for line open(file):
if "data in on" in line:
print(os.path.join(root, file))
它在扔:
for line open(file):
^
SyntaxError: invalid syntax
我认为问题在于“文件”,但我不完全确定,因为我认为我可以将文件用作变量。任何见解都将不胜感激。
答案 0 :(得分:0)
您需要传递完整路径open
:
for root, dirs, files in os.walk("/"):
for file in files:
if file.endswith(".sh"):
path = os.path.join(root, file)
for line in open(path):
if "data in on" in line:
print(path)