自动交互的关键是交互信息的自动输入;
一、自动交互方法一——重定向
1 需求
从一台Linux机器ftp登录到另一台Linux机器,进行系列操作后关闭;
2 自动交互方法
使用“command << delimiter”,从标准输入中读入,直到遇到delimiter分界符;
Shell将分界符delimiter之后直到下一个相同分界符之前的所有内容作为输入,遇到下一个分界符表示输入结束;
最常见的delimiter分界符是EOF,也可自定义为其他字符;
3 自动交互实现
#!/bin/bash
ftp -in 192.168.168.167 << EOF
user twc 829
cd /ITS/TOOL/download
ascii
hash
prompt
mput *
close
bye
EOF
详解如下:
(1)登录FTP服务器
① 方法1
ftp -in IP_ADDRESS << EOF
由于是ftp脚本,需要定一个结束符,建议使用EOF;
-i 关闭多个文件传输时的交互过程
-n 不适用ftp自动登录,ftp默认读取用户家目录下.netrc文件中的设定
-v 显示远程服务器的所有响应信息
②