我想通过 ssh 执行一个简单的任务:返回给定文件列表中不存在的所有文件。
我这样做的方法是将以下内容包装在 ssh 会话中:
for f in $(files); do stat $f > /dev/null ;done
stdout 重定向将忽略所有好的文件,然后读取 stderr 将为我提供所有未找到文件的列表。
我首先想到将这个 bash 代码与 a 中的 ssh 部分一起使用,subprocess.run(..., shell=True)
但不鼓励这样做。相反,paramiko
有人建议。
我试图理解为什么以及何时原生 python 比子处理 bash 更好
不同操作系统的可计算性(对我来说不是问题,因为代码与 Ubuntu 紧密相关)
错误和异常处理 - 我确实得到并认为它很重要,尽管从子进程中捕获异常或退出代码也很容易
在我看来,原生 python 的缺点是当 bash 的 ssh 和 stat 在我看来更加简单易用时,需要涉及一些复杂的模块,例如 paramiko
是否有关于何时以及如何选择 bash 而不是 python 的指南?
这个问题主要是关于在 ssh 上使用命令,但与 bash 以简单快捷的方式执行的任何其他命令以及 python 换行有关
交互式爱情
相关分类