问题描述
在expect中,想判断系统中是否存在某个目录,如果不存在,则创建新目录,如果存在,则删除目录下的文件。结果按照常规写法,报错:
root@essup ~]# invalid command name “-d”
while executing "-d /etc/nginx/html "
invoked from within “send “if [ -d /etc/nginx/html ]; then rm -rf /etc/nginx/html/*; else mkdir -p /etc/nginx/html; fi\n””
解决方案
使用test进行判断,
#如果目录不存在,则创建该目录
send "test -d /etc/nginx/html || mkdir -p /etc/nginx/html\n"
expect $expChar
小方法,记之。