如何在cd命令linux中传递变量名

时间:2014-01-18 03:07:41

标签: linux shell get sftp

我在shell脚本中连接到SFTP,但是当我尝试获取一些传递变量名称的文件但发送错误时。我的代码:

set date_file_format [timestamp -format %C%y%m%d]
#some code
expect "sftp>"
send "mget /home/dir/*$date_file_format*.dat /home2/user/dir2 \r"

date_file_format = 20140117

我希望使用通配符* $ date_file_format * .dat

获取包含“20140117”和扩展名.dat的所有文件

这是错误:

sftp> usage: send [args] string
    while executing
"send "mget /home/dir/*$date_file_format*.dat /home2/user/dir2 \r""
    (file "./bash.sh" line 15)

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

看来你正在尝试使用shell解释器执行expect程序。 expect是一种不同的语言,必须使用expect解释器执行。