spawn是进入expect环境后才可以执行的expect内部命令 。expect是一种脚本语言,它能够代替我们实现与终端的交互,我们不必再守候在电脑旁边输入密码,或是根据系统的输出再运行相应的命令 。
如果没有装expect或者直接在默认的SHELL下执行是找不到spawn命令的 。所以不要用 “which spawn“之类的命令去找spawn命令 。好比windows里的dir就是一个内部命令,这个命令由shell自带,用户无法找到一个dir.com或dir.exe的可执行文件 。它主要的功能是给运行进程加个壳,用来传递交互指令 。
文章插图
扩展资料:
下面是一个能用来实现自动执行该命令的Expect脚本:
#!/usr/bin/expect
【linux spawn命令】# Change a login shell to tcsh
set user [lindex $argv 0]
spawn chsh $user
expect "]:"
send "/bin/tcsh "
expect eof
exit
和其他脚本一样首行指定用来执行该脚本的命令程序,这里是/usr/bin/expect 。程序第一行用来获得脚本的执行参数(其保存在数组$argv中,从0号开始是参数),并将其保存到变量user中 。
第二个参数使用Expect的spawn命令来启动脚本和命令的会话,这里启动的是chsh命令,实际上命令是以衍生子进程的方式来运行的 。
参考资料来源:百度百科-SPAWN (Expect编程工具语言)
推荐阅读
- 我的世界手机版怎么有命令方块 我的世界手机版怎么有命令方块方法
- imicom查找手机命令?
- 电脑控制面板具体位置在哪儿 控制面板如何通过命令打开
- 快乐命令动漫的终结
- U盘坏了怎么修
- linux操作系统基础知识 linux上安装jdk系统
- 命令方块召唤房子
- 佳能5100命令错误是什么意思?
- hdfs上传下载命令 上传文件到hdfs的命令
- 怎么用CMD命令强制关机