如何使用SSH和EXPECT脚本在远程PC上连接和创建文件?

时间:2018-05-23 13:46:56

标签: ssh directory expect scp

当我运行我的程序时,这个循环应该在我的目录$ dir中复制我的文件$ file。首先,它只是在我的$ myDest中创建一个名为$ file的新文件(并且它没有创建一个新目录$ dir来将我的$文件放入其中)。

foreach file $FILES dir $DIRECTORIES  {
    set timeout -1;
    puts "\nFichier : $file \n"
    puts "Repertoire : $dir \n"

    spawn scp -p -r "$mySource/$file" "$myDest/$dir"
    expect -re "(.*)assword: " {sleep 1; send -- "$pass\r" }
    expect -timeout 3600 eof
}

所以我试图将命令mkdir添加到所有这些东西,所以它创建了我在远程PC上的目录,但它不起作用。

foreach file $FILES dir $DIRECTORIES  {
    set timeout -1;
    puts "\nFichier : $file \n"
    puts "Repertoire : $dir \n"

    spawn ssh marpic@192.168.110.90 'mkdir $path/$dir' 
    expect -re "(.*)assword: " {sleep 1; send -- "$pass\r" }
    expect eof

    spawn scp -p -r "$mySource/$file" "$myDest/$dir"
    expect -re "(.*)assword: " {sleep 1; send -- "$pass\r" }
    expect -timeout 3600 eof
}

错误代码:

root@raspberrypi:~# ./recupRaspFiles.sh 

Fichier : 2018-03-07_09-34-24_R_HOURS_Q2 

Repertoire : 2018-03-07 

spawn ssh marpic@192.168.110.90 'mkdir /home/marpic/muonic_data/Data_Q2/2018-03-07'
marpic@192.168.110.90's password: 
bash: mkdir /home/marpic/muonic_data/Data_Q2/2018-03-07: Aucun fichier ou dossier de ce type
spawn scp -p -r /root/muonic_data/2018-03-07_09-34-24_R_HOURS_Q2 marpic@192.168.110.90:/home/marpic/muonic_data/Data_Q2/2018-03-07
[...]

有没有人有解决方案?

0 个答案:

没有答案