我有一个脚本可以将丢失的文件从一台计算机复制到另一台计算机。代码是
#!/bin/bash
MACHINE=machine2
DIRECTORY=/test/oracle/
rsh $MACHINE "cd /test/oracle/"
scp -rp machine2:/test/oracle/miss_files machine1:/test/oracle
cd /test/oracle/MT ; ls -ltrh > /tset/oracle/MT_extract_machine1
diff /test/oracle/MT_extract_machine1 /test/oracle/miss_files > /test/oracle/diffo
awk '{print$10}' /test/oracle/diff0 > /test/oracle/diffr
while read -r line ; do scp -rp $line /test/oracle/final_result ; done < /test/oracle/diffr
答案1
您正在执行 cd ... ,然后是 ls ,因此您没有获得路径,只有文件名。所以 scp 没有完整路径,当您点击 scp -rp $line ... 似乎您需要执行 scp -rp /test/oracle/$line ...