shell脚本中使用root权限
方法一:使用expect参考博客:https://www.cnblogs.com/linuxAndMcu/p/11127787.html#_label1#!/usr/expect/bin/expect -fset timeout=5 #设置5秒超时#下面几行后面不能添加注释,否则会异常#send "exit\r" - exit命令:会退出root账号,成为普通用户spawn su - rootex
·
方法一:使用expect
参考博客:https://www.cnblogs.com/linuxAndMcu/p/11127787.html#_label1
#!/usr/expect/bin/expect -f
set timeout=5 #设置5秒超时
#下面几行后面不能添加注释,否则会异常
#send "exit\r" - exit命令:会退出root账号,成为普通用户
spawn su - root
expect "密码:"
send "zlkj\r"
send "pwd\r"
#send "exit\r"
interact #使用interact后,脚本将退出到root账号下,可以手动执行root权限的命令
exit 0 #退出脚本
方法二:sudo
这个方法只能进入root执行一条指令,参考:
https://blog.csdn.net/wangpailiulanqi8/article/details/82414136
http://m.blog.chinaunix.net/uid-20620288-id-5745939.html
使用下面的代码
echo [password] | sudo -s [commond]
测试,其中[password]为用户密码:
#!/usr/expect/bin/expect -f
whoami
echo [password] | sudo -s whoami
whoami
更多推荐
已为社区贡献2条内容
所有评论(0)