![Unix 명령을 사용하여 Windows에서 Unix로 파일 이동(복사 아님)](https://linux55.com/image/9682/Unix%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20Windows%EC%97%90%EC%84%9C%20Unix%EB%A1%9C%20%ED%8C%8C%EC%9D%BC%20%EC%9D%B4%EB%8F%99(%EB%B3%B5%EC%82%AC%20%EC%95%84%EB%8B%98).png)
Windows 시스템(파일 시스템이 아님)의 특정 폴더에서 Unix의 디렉터리로 파일을 이동하기 위해 셸 스크립트를 실행하는 데이터 단계 ETL 작업을 실행해야 합니다.
나 지금 이런거 있어
HOST=UNIX123
USER=abcd
PASSWORD=abc123
FILE_NAME="Test.txt"
ftp -v -n WINDOWS123 << end_script
user zxc/VKR XYZ
lcd /stg/scripts
cd "data"
binary
mget *.txt
quit
end_script
여기서 mget 명령은 파일을 복사하기만 합니다. 파일을 복사하는 대신 이동하고 싶어요
답변1
최소한 관리자 공유가 있는 Windows 상자가 있고 \\computer\c$
이 스크립트를 실행할 Linux 상자가 있는 경우:
Windows 공유 읽기/쓰기 마운트
mount -t cifs $network_path $mount_directory -o credentials=$cred_file
마운트된 디렉터리에서 이동 명령을 실행합니다.
mv "$mount_directory/*" "$new_directory"
파일을 복사한 후 삭제해야 할 수도 있습니다.
cp "$mount_directory/*"
rm "$mount_directory/*"
cp
명령( , 및 ) mv
에 필요한 스위치가 있는지 확인하십시오 rm
.