File io 如何将网络设备名称从外部CSV或文本文件读入脚本?
我已经用Exepct语言编写了以下示例脚本来备份我的网络设备配置(cisco设备) 现在,我希望我的脚本从csv或更简单的txt文件加载$device;我的意思是,假设我的txt文件以以下方式包含所有cisco ip地址:File io 如何将网络设备名称从外部CSV或文本文件读入脚本?,file-io,tcl,expect,File Io,Tcl,Expect,我已经用Exepct语言编写了以下示例脚本来备份我的网络设备配置(cisco设备) 现在,我希望我的脚本从csv或更简单的txt文件加载$device;我的意思是,假设我的txt文件以以下方式包含所有cisco ip地址: 192.168.244.20 192.158.244.21 ... 192.168.244.245 我希望该脚本一旦加载txt文件,每次加载一个ip地址,将该ip地址分配给$device变量,然后生成命令“copyrunning config…” 我该怎么办?任何人都可以帮
192.168.244.20
192.158.244.21
...
192.168.244.245
我希望该脚本一旦加载txt文件,每次加载一个ip地址,将该ip地址分配给$device变量,然后生成命令“copyrunning config…”
我该怎么办?任何人都可以帮助我
# -------------- core -------------- #
set file_handle [open text.txt r]
while {[gets $file_handle device] != -1} {
spawn telnet $device
#... same as above
send "exit\r"
expect eof
}
close $file_handle
有关特定命令的帮助,请参见
有关特定命令的帮助,请参见可以使用tcllib中的csv包,但对于单列IP地址表,不需要任何复杂性。可以使用tcllib中的csv包,但对于单列IP地址表,不需要任何复杂性。
# -------------- core -------------- #
set file_handle [open text.txt r]
while {[gets $file_handle device] != -1} {
spawn telnet $device
#... same as above
send "exit\r"
expect eof
}
close $file_handle