【发布时间】:2013-05-10 16:36:34
【问题描述】:
我有abc.py 文件,它接受参数-p [password] 和-c [command]。
现在我可以按如下方式运行此文件:
./abc.py -p 'a!s!d!f' -c 'ifconfig'
a!s!d!f 是我的密码。由于密码包含! 字符,所以我必须将其作为' ' 中的参数发送。我尝试发送到" ",但没有成功。
现在我想按如下方式运行这段代码:
./abc.py -p 'a!s!d!f' -c './abc.py -p 'a!s!d!f' -c 'ifconfig''
我将./abc.py -p 'a!s!d!f' -c 'ifconfig' 作为abc.py 的参数
问题是,我无法将' characher 作为参数发送给abc.py
我需要这个 ' 字符作为输入发送。
我尝试将\ 转义字符用作:
./abc.py -p 'a!s!d!f' -c './abc.py -p \'a!s!d!f\' -c \'ifconfig\''
但不工作。我该怎么做呢?任何帮助将不胜感激。
【问题讨论】:
-
这不是python问题;这是一个 shell 引用 问题。
-
(在 tcsh 中,即使您的第一个示例也不起作用)。
-
它给出错误:-bash: !: event not found 我的脚本使用 paramiko SSH 包在另一个 VM 上执行 linux 命令。
-
那么,没有解决办法吗? :-(
-
当然有解决办法。当您的问题甚至没有说明您正在使用哪个 shell 或您收到什么错误消息时,期待在 10 分钟内获得一个有点不耐烦......(无论如何这可能属于超级用户)
标签: bash command-line-arguments