python - 在 bash 脚本中运行参数化的 python 脚本

标签 python bash

我有一个 python 脚本可以让我登录到服务。我这样做:

./login.py user@email.com 'pass'

为了登录。

当我直接输入这个命令时,我成功登录了。当我运行以下脚本时,服务器返回 400。

PYAPIROOT="scriptpath/script"
PYLOGIN="./login.py"
LOGIN="user@email.com"
PASS="'pass'"

function login {
    echo -----------------------------
    echo
    cd $PYAPIROOT
    echo "Logging in "$LOGIN
    python "$PYLOGIN" "$LOGIN" "$PASS"
    echo $PYLOGIN $LOGIN $PASS
    echo -----------------------------
}

login

当我复制并运行回显的内容时,我得到 200。 为什么我不能使用我的脚本登录?

最佳答案

我怀疑是双引号:

PASS="'pass'"

改用这个:

PASS="pass"

关于python - 在 bash 脚本中运行参数化的 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30392840/

相关文章:

Python-日期转换

python - 如何让脚本等待一段时间,以便加载来自 ajax 响应的数据,然后捕获网页

python - 当 key 明显存在时,为什么我会收到 KeyError?

bash - shell脚本中通配符*的奇怪行为

java - 从外部目录运行 Shell 脚本 : No such file or directory

python - 如何在 Linux 上使用 ipopt 优化器和 pyomo

python - SQLAlchemy:在回滚无效事务之前无法重新连接

bash - 为什么这个符号链接(symbolic link)创建了两个实例

linux - shell 脚本语法错误接近意外 'done'

bash - Tar 提取后文件夹重命名