我不知道代码有什么问题。它在cmd-line中运行良好,但是子进程无法处理它。
logs = subprocess.check_output("find -maxdepth 5 -name 'log.single'", shell = True).strip().split("\n")
错误
subprocess.CalledProcessError: Command 'find -maxdepth 5 -name 'log.single'' returned non-zero exit status 1
从shell中使用它可以正常工作。
user@server:/mnt/x$ find -maxdepth 5 -name 'log.single'
./projects/X/Y/Target/log.single
./projects/X/Y1/Target/log.single
让我更加疑惑的是,代码在较低级别上运行但不是很深入。如果我转到/ projects / X /并将maxdepth更改为3,则可以正常工作。