Python 3.x 使用boto3从powershell远程运行python脚本不起作用
我正在尝试使用boto3在我的windows ec2实例中运行python文件。我试图使用AWS RunPowerShellScript运行以下命令,当我将rdp导入ec2实例时,这两个命令都可以运行 我正在使用的代码: dostufforec2.pyPython 3.x 使用boto3从powershell远程运行python脚本不起作用,python-3.x,windows,amazon-web-services,powershell,boto3,Python 3.x,Windows,Amazon Web Services,Powershell,Boto3,我正在尝试使用boto3在我的windows ec2实例中运行python文件。我试图使用AWS RunPowerShellScript运行以下命令,当我将rdp导入ec2实例时,这两个命令都可以运行 我正在使用的代码: dostufforec2.py import boto3 resp = client.send_command( DocumentName="AWS-RunPowerShellScript", # One of AWS' preconfigured docume
import boto3
resp = client.send_command(
DocumentName="AWS-RunPowerShellScript", # One of AWS' preconfigured documents
Parameters={'commands': ['md test1', 'py -3 make_test_dir.py']},
InstanceIds=XXXXXXXXXX,
)
使_测试_dir.py
import os
os.system('md test2')
当我运行dostufforec2.py时,只创建test1目录。
当我使用rdp在Powershell上直接运行md test1和py-3 make_test_dir.py时,会创建test1和test2
我将如何着手解决这个问题。我通常使用linux,没有使用Powershell的经验,但我必须使用它或CMD,因为实例是Windows
我还计划在AWS Lambda开始工作后将其移动到AWS Lambda,但调用不同的python脚本。如果有任何问题,请告诉我。我猜当您登录时,py-3。。。works b/c python在您的路径中,但当SSM客户端运行它时,它不是。您可以尝试为“py”可执行文件和python文件指定完整路径,以排除这种情况 要查找py.exe并进行故障排除,可以使用get命令gcm,简称为:
(gcm py).source
应该打印py.exe的完整路径
您可以通过如上所述自动检测py的位置并使用“&”调用输出字符串来获得fancier,例如:
& (gcm py.exe).source -3 c:/temp/make_test_dir.py
注意:可以使用“/”而不是“\”。窗户也可以