如何查找expect脚本中是否存在文件

时间:2014-05-28 10:31:05

标签: expect

我在我的期望剧本中有这样的声明

send "sed -i -e 's/$oldport/$newport/' backup.txt\r"
expect "$ "

但是我想首先检查文件backup.txt是否存在,如果存在,则编辑它。

我如何实现这一目标?

由于

2 个答案:

答案 0 :(得分:3)

由于expect是Tcl的扩展,all Tcl commands可供使用:

if {[file exists backup.txt]} {
    send "sed -i -e 's/$oldport/$newport/' backup.txt\r"
    expect "$ "
}

答案 1 :(得分:0)

以下是使用 ls

的快速方法
set file "backup.txt"
send "ls $file\r"
expect {
        "\r\n$file" {puts "\nfile exists"}
        "cannot access $file" {puts "\nfile not found"}
}

您只需将puts "\nfile exists"替换为您的陈述。