繁体   English   中英

在 bash/python 提示符下执行时如何将参数传递给 bash/python 代码? [当手动(或)通过 SSH 在 exec 模式下执行时]

[英]How to pass arguments to bash / python code when executing in bash / python prompt ? [when executing manually (or) in exec mode through SSH]

我正在bash提示符/命令行中手动运行脚本。 如何传递参数?

mem_utilization=`free -m | awk 'NR==2{printf "%.2f\n", $3*100/$2 }'`

笔记:

我是脚本新手,这就是上面代码不完整的原因。 请在代码中使用任何参数。 假设用户名和密码是参数。

可以在手册上下文中回答这个问题。

(只是给你一个简短的说明,这就是我想要做的。我喜欢知道这一点,并在 exec 模式(或)bash 提示符(或)命令行(或)python 代码中通过 SSH 运行代码时做同样的事情在 python 提示符下。)

mem_utilization=`free -m | awk 'NR==2{printf "%.2f\n", $3*100/$2 }'`

注意

使用%符号作为参数并在末尾附加。

mem_utilization=80%

对于第一部分,我不太确定你想做什么:使用你的 awk-syntax 你可以附加你的 % :

mem_utilization=$(free -m | awk 'NR==2{printf "%.2f\n", $3*100/$2 }')
mem_utilization=$mem_utilization'%'
echo ${mem_utilization}

你可以把它放在一个 shell 脚本中,用类似的东西通过 SSH 运行

ssh user@pc123456 'bash -s' < local_script.sh

对于您想通过 ssh 将参数传递给 python promts 的事实:这就像其他任何时候一样:使用 argparse 并提供带有“path_to_script”-“您的参数名称”的参数...--“您的名称论证n"

您想使用密码作为参数这一事实是您必须仔细考虑的:您可以使用 sshpass。 但是请不要将其写入脚本。 而是使用 read 输入一次密码。 (对比这个讨论: Automatically enter SSH password with script

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM