Ожидается, что скрипт должен читать команды из файла и посылать их построчно через telnet, но он помещает все в одну строку
У меня есть файл с командами, и моя задача - подключиться к telnet, прочитать команду изфайл и отправьте его.Я должен сделать это для всех команд в файле.Я подготовил скрипт, но он помещает все команды в одну строку и отправляет их как одну.
Вот содержимое файла с командами (это просто тестовые команды)
add chain=forward src-address=1.1.1.1 action=log;
add chain=forward src-address=1.1.1.1 action=log;
add chain=forward src-address=1.1.1.1 action=log;
add chain=forward src-address=2.2.2.2 action=log;
add chain=forward src-address=2.2.2.2 action=log;
add chain=forward src-address=2.2.2.2 action=log;
add chain=forward src-address=2.2.2.2 action=log;
add chain=forward src-address=2.2.2.2 action=log;
add chain=forward src-address=3.3.3.3 action=log;
add chain=forward src-address=3.3.3.3 action=log;
add chain=forward src-address=3.3.3.3 action=log;
, а вот скрипт, который я использую
set timeout 1
set fid [open /home/toor/file.txt]
set content [read $fid]
close $fid
###
start telnet and login
###
set records [split $content "\r"]
foreach record $records {
lassign $records \
commands
expect "> "
send "$commands\r"
}
sleep 1
expect "> "
send "quit\r"
Любой совет, который поможетя бы отправил каждую команду отдельно, это действительно помогло бы мне, и я буду очень вам благодарен