Unixコマンドを使用してWindowsからUnixにファイルを移動する(コピーしない)

Unixコマンドを使用してWindowsからUnixにファイルを移動する(コピーしない)

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

関連情報