[英]how to invoke bash script with aws lambda function in python?
我想在新創建的 lambda function 中調用名為myScript.sh
的 bash 腳本。
第 1 步:我創建了一個名為 myLambda.py 的 lambda myLambda.py
,源代碼如下:
import subprocess
print("start")
subprocess.call("./myScript.sh")"
步驟 2:在與myLambda.py
相同的路徑下創建一個名為myScript.sh
的 bash 腳本
第三步:點擊測試按鈕,得到響應:
{
"errorMessage": "[Errno 13] Permission denied: './myScript.sh'"
}
有人知道如何處理 aws lambda function 環境中的權限被拒絕問題嗎?
由於這些文件是在https://docs.aws.amazon.com/lambda/latest/dg/code-editor.html中作為指南添加的,因此使用 ZE206A54E94E97690CCEZ50CC8 更改文件權限命令“769883A822C7A53EZ”沒有幫助.
它通過將 myScript.sh 移動到 /tmp 文件夾並添加權限更改命令來解決:
subprocess.run(["chmod", "+x", "/tmp/myScript.sh"])
您不能執行沒有執行權限的腳本。 您可以使用以下變體提供執行權限:
chmod +x /somepath/myScript.sh
您可以使用當前的子流程方法運行它。 在運行 myScript.sh 之前運行 chmod。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.