深入探索 Spawn 命令:功能、应用与问题解决
1. Spawn 命令基础
Spawn 命令不仅能启动进程,还可用于与文件和管道进行交互。在查找要调用的程序时,它遵循常见规则,相对和绝对文件名均可接受。若只指定文件名而无目录,会将环境变量 PATH 的值视为目录列表,逐个搜索直至找到文件,此搜索由操作系统完成,与 Bourne shell 和 C shell 查找程序的方式相同。
例如:
spawn /bin/passwd ;# 绝对路径 spawn passwd ;# 相对路径在某些情况下,使用绝对名称指定程序是个好主意;而在其他情况下,相对名称更合适。若使用相对名称,最好显式设置 PATH,如:
set env(PATH) "/bin:/usr/bin"这样可避免使用用户路径中可能存在的本地实用程序版本。同时,为方便修改,可使用变量来引用程序,如:
set telnet /usr/ucb/telnet spawn $telnetSpawn 还支持波浪号(~)表示法,波浪号位于文件名的第一个组件前,表示该组件对应用户的主目录,例如:
spawn -shaney/bin/pike2. 复用程序的哲学
之前介绍了使用 p