我曾经执行命令:
sudo -u elasticsearch -s "ulimit -Hn"
并且它返回了ulimit -Hn的值,这是用户elasticsearch看到的,直到我在Ubuntu 11.10上尝试了它。在那里返回:
/bin/bash: ulimit -Hn: command not found
我尝试了一些不同的命令,当我使用参数时,我总是得到“找不到命令”:
$ sudo -u elasticsearch -s "ls all.sh"
/bin/bash: ls all.sh: command not found
关于如何执行需要参数通过的命令的任何想法sudo
?
-s
呢?只需保留普通的shell并使用它执行命令即可。如sudo -u elasticsearch ls all.sh
。如果elasticsearch
具有无法使用的默认外壳,请-s bash
在实际命令之前使用。