How do I run passwd, ftp, elnet, ip and other interactive programs from a shell script or in the background?
These programs expect a terminal interface. Shells makes no special provisions to provide one. Hence, such programs cannot be automated in shell scripts. The ‘expect’ program provides a programmable terminal interface for automating interaction with such programs. The following expect script is an example of a non-interactive version of passwd(1). # username is passed as 1st arg, password as 2nd set password [index $argv 2] spawn passwd [index $argv 1] expect “*password:” send “$password\r” expect “*password:” send “$password\r” expect eof expect can partially automate interaction which is especially useful for telnet, rlogin, debuggers or other programs that have no built-in command language. The distribution provides an example script to rerun rogue until a good starting configuration appears. Then, control is given back to the user to enjoy the game. Fortunately some programs have been written to manage the connection to a pseudo-tty so that you can run these sorts of programs in a
These programs expect a terminal interface. Shells makes no special provisions to provide one. Hence, such programs cannot be automated in shell scripts. The ‘expect’ program provides a programmable terminal interface for automating interaction with such programs. The following expect script is an example of a non-interactive version of passwd(1). # username is passed as 1st arg, password as 2nd set password [index $argv 2] spawn passwd [index $argv 1] expect “*password:” send “$password\r” expect “*password:” send “$password\r” expect eof expect can partially automate interaction which is especially useful for telnet, rlogin, debuggers or other programs that have no built-in command language. The distribution provides an example script to rerun rogue until a good starting configuration appears. Then, control is given back to the user to enjoy the game. Fortunately some programs have been written to manage the connection to a pseudo-tty so that you can run these sorts of programs in a
Related Questions
- Is there a way to run AutoKey in a daemon mode that is in background and without a tray icon or from a shell script ?
- How do I run passwd, ftp, elnet, ip and other interactive programs from a shell script or in the background?
- Can I telnet to my UNIX shell to make changes and schedule programs to run at certain times?