cp가 디렉터리의 파일에 액세스할 수 없습니다.

cp가 디렉터리의 파일에 액세스할 수 없습니다.

한 컴퓨터에서 다른 컴퓨터로 손실된 파일을 복사하는 스크립트가 있습니다. 코드는

#!/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 ...을 수행해야 하는 것 같습니다.

관련 정보