检查外壳输出中的字符串



我正在尝试检查Linux服务器上的信息,如果它有某些名为"ocr"的磁盘。 所以我运行了一个 shell 命令并在文本文件中捕获输出。 然后我将在文件中搜索字符串。但是下面的脚本不起作用。

import os
myCmd = os.popen('ls /dev/asm|grep ocr').read()
print(myCmd)
with open('myCmd') as f:
if 'ocr' in f.read():
print("RAC server")

并在文本文件中捕获输出

您已将其保存在字符串变量中,然后尝试打开并读取名为 myCmd 的文件。这些可能有不同的内容,因为不清楚你实际在哪里写了任何文件

您不需要该代码逻辑的文件

if 'ocr' in myCmd:
print("RAC server")

另外,如果您不必使用 shell 命令,您真的不应该使用 shell 命令

for f in os.listdir("/dev/asm"):
if "ocr" in f:
print("RAC server")
break 

最新更新