Я использовал для выполнения команды:
sudo -u elasticsearch -s "ulimit -Hn"
и он возвращал значение ulimit -Hn, как его видел пользовательasticsearch, пока я не попробовал его в 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
? Просто держите обычную оболочку и используйте ее для выполнения команд. Такие какsudo -u elasticsearch ls all.sh
. Еслиelasticsearch
имеет непригодную оболочку по умолчанию, используйте-s bash
перед фактической командой.