Tôi đã sử dụng để thực hiện lệnh:
sudo -u elasticsearch -s "ulimit -Hn"
và nó đã trả về giá trị của ulimit -Hn như người dùng đã tìm thấy cho đến khi tôi dùng thử trên Ubuntu 11.10. Nó trả lại:
/bin/bash: ulimit -Hn: command not found
Tôi đã thử một vài lệnh khác nhau và khi tôi sử dụng một đối số, tôi luôn nhận được "lệnh không tìm thấy":
$ sudo -u elasticsearch -s "ls all.sh"
/bin/bash: ls all.sh: command not found
Bất kỳ ý tưởng về làm thế nào tôi có thể thực hiện một lệnh yêu cầu đối số thông qua sudo
?
-s
? Chỉ cần giữ shell bình thường và sử dụng nó để thực hiện các lệnh. Chẳng hạn nhưsudo -u elasticsearch ls all.sh
. Nếuelasticsearch
có shell mặc định không sử dụng được, hãy sử dụng-s bash
trước lệnh thực tế.