我有一个在"HOST“和"PORT”上运行的mongod实例,并且我正在尝试通过ssh获取进程的ulimit参数。
因此,以下两个命令可以很好地工作。
// outputs pid of mongod
ssh HOST@PORT pgrep mongod
17215
// outputs ulimit parameters of the process
ssh HOST@PORT cat proc/17215/limits
Limit Soft Limit Hard Limit Units
Max cpu time ...所以我想放入$(pgrep mongod)而不是硬编码的值也行得通,但它不能。
ssh HOST@PORT cat proc/$(pgrep mongod)/limits
> cat proc/26394/limits: No such file or directory实际上,在本地主机端口26394上运行的是另一个mon神。它看起来像是$(pgrep mongod)输出的是本地mongod的pid,而不是远程的。如何更改最后一条命令以获得所需的输出?
顺便说一句,我想用一个命令行(而不是ssh HOST@PORT;然后是cat proc/$(pgrep mongod)/limits)。
发布于 2020-12-21 15:35:43
试一试
ssh HOST@PORT 'cat proc/$(pgrep mongod)/limits'这将避免强制在远程服务器上执行pgrep的$(pgrep mongod)的本地shell插值。
https://stackoverflow.com/questions/65388626
复制相似问题