以sudo apt-get update为例
1、使用echo和管道命令
这种方法网上说是可行,不过会将密码显示在屏幕上,但我在ubuntu12.04上测试不成功。
2、使用文本块输入重定向
这种在ubuntu12.04 测试可行也比较简单
3、使用expect命令
1. [#! /usr/bin/expect]
这个跟bash shell 开头一样,是告诉系统使用那个解释器来解释脚本
注意:这一行需要在脚本的第一行。
2. [set timeout 30]
设置超时时间为30秒
3. [spawn sudo apt-get
update]
1、使用echo和管道命令
- #! /bin/bash
- echo “password” | sudo apt-get update
这种方法网上说是可行,不过会将密码显示在屏幕上,但我在ubuntu12.04上测试不成功。
2、使用文本块输入重定向
- #! /bin/bash
- sudo apt-get update<<EOF
- password
- EOF
这种在ubuntu12.04 测试可行也比较简单
3、使用expect命令
- #! /usr/bin/expect
- set timeout 30
- spawn sudo apt-get update
- expect 'password for xxx:'
- send 'password\r'
- interact
1. [#! /usr/bin/expect]
这个跟bash shell 开头一样,是告诉系统使用那个解释器来解释脚本
注意:这一行需要在脚本的第一行。
2. [set timeout 30]
设置超时时间为30秒
3. [spawn
