SCP 및 소스에서 파일 제거

SCP 및 소스에서 파일 제거

File_Transfer_List.txtscp를 수행할 파일 목록이 포함된 목록 파일이 있습니다.

내 요구 사항은 목록 파일에 제공된 파일을 scp한 다음 소스 위치에서 해당 파일을 삭제해야 한다는 것입니다.

나는 이것을 시도했습니다 :

scp File_Name user@server:/destination && rm File_Name ;

테스트할 수 없습니다. SCP를 테스트할 준비가 되어 있지 않습니다. 내가 틀렸다면 누군가 나를 고쳐줄 수 있나요?

답변1

여기에는 두 가지 요구 사항이 있습니다(파일 목록의 파일그리고소스 파일 삭제) 사용시 비명을 지른다 rsync.

파일 목록에 포함된 내용(상대 또는 절대 경로, 보존된 백업 경로 등)에 따라 다음을 수행할 수 있습니다.

rsync --files-from=filelist.txt --remove-source-files -avz \
      . user@remotehost:/path/to/backup/folder

답변2

내가 올바르게 이해했다면 파일 이름이 포함된 파일이 있고 각 파일을 원격 서버에 복사하고 복사가 성공하면 로컬 파일을 삭제하려는 것입니다. 그렇다면 다음과 같이 할 수 있습니다.

while IFS= read -r file; do 
    scp -- "$file" [email protected]:/remote/path && rm -- "$file" 
done < files.txt

관련 정보