원격 서버에 로그인한 후 복사할 수 없습니다

원격 서버에 로그인한 후 복사할 수 없습니다

다음은 원격 서버에 로그인한 후 한 경로에서 다른 경로로 폴더를 복사하는 코드입니다. 제가 겪고 있는 문제는 원격 서버에 로그인한 후 원본 디렉터리를 대상 디렉터리로 복사할 수 없다는 것입니다.


echo "PLEASE ENTER LIB NAME "
read dirname
echo "You entered: $dirname"


echo "PLEASE ENTER VERSION"
echo "example 1.0   etc"
read version

NOW=$(date +"%Y%m%d")

echo "date $NOW"

##FOR=$(rev<<"$NOW")


echo "PLEASE ENTER EXTENSION"
echo "example 0.0 or 0.1 etc"

read date_extension
echo "You entered: $date_extension"


mkdir "${dirname}@${version}@${NOW}${date_extension}"


TAG_DIR=${dirname}@${version}@${NOW}${date_extension}


mkdir $TAG_DIR/CDSOA

cd $TAG_DIR/

echo `pwd`


echo "PLEASE ENTER SOURCE LIB PATH"
read  path


PATH1=$(cp -Rf $path  `pwd`)
echo "entered path : $PATH1"


read path2
echo "PLEASE ENTER DESTINATION  PATH"
echo $path2



ssh -l prj/ dlhl0654


cp -rf $TAG_DIR  $path2

echo "aaaa"

답변1

그것은 당신이 필요로하는 것 같습니다 scp.

기본적으로는 cp로컬 디렉터리를 원격 디렉터리로 복사하려는 경우 다음과 같은 방법을 사용할 수 있습니다.ssh

scp -r /home/user/localdir remoteuser@remotehost:/tmp/

remotehost그 후에는 이라는 디렉터리가 생성됩니다 localdir.

보세요 man scp- 동일한 ssh연결을 사용합니다.

답변2

쉘에서 원격 복사 명령을 실행해야 합니다 ssh. 나는 prj가 원격 서버에 로그인하기 위한 사용자 이름이고 dlhl0654가 원격 호스트 이름이라고 추측합니다. 서버 간에 비밀번호 없는 인증을 설정하시기 바랍니다. 이것을 시도해 보세요. 작동할 것입니다.

echo "PLEASE ENTER LIB NAME "
read dirname
echo "You entered: $dirname"


echo "PLEASE ENTER VERSION"
echo "example 1.0   etc"
read version

NOW=$(date +"%Y%m%d")

echo "date $NOW"

##FOR=$(rev<<"$NOW")


echo "PLEASE ENTER EXTENSION"
echo "example 0.0 or 0.1 etc"

read date_extension
echo "You entered: $date_extension"


mkdir "${dirname}@${version}@${NOW}${date_extension}"


TAG_DIR=${dirname}@${version}@${NOW}${date_extension}


mkdir $TAG_DIR/CDSOA

cd $TAG_DIR/

echo `pwd`


echo "PLEASE ENTER SOURCE LIB PATH"
read  path


PATH1=$(cp -Rf $path  `pwd`)
echo "entered path : $PATH1"


read path2
echo "PLEASE ENTER DESTINATION  PATH"
echo $path2



ssh -l prj@dlhl0654 <<EOF
cp -rf "$TAG_DIR"  "$path2"
EOF

echo "aaaa"

관련 정보