数日間働いてみましたが、わかりません。 Ubuntu-ServerからWindowsデスクトップにファイルがいっぱいのフォルダをscp
移動しようとしています。スクリプトでプロセスを自動化し.tar
たいので、サーバーからデスクトップにプッシュしたいと思います。bash
私は次のコマンドを使用しています。
scp -r path/to/folder Username@Windowsmachineip:C:/path/to/folder/
コマンドを実行するとエラーが発生しますno such file or directory
が、サーバー上のフォルダー名でフォルダーが作成されます。
私は何ですか?できるdo は単一のファイルをコピーするものですが、次のようにデスクトップでファイル名を指定した場合にのみ可能です。
scp -r path/to/folder/file Username@Windowsmachineip:C:/path/to/folder/file
最後にファイル名なしで試してみると、同じエラーが発生します。提案されているようにフラグを試しましたが、-p
同じエラーが発生します。サーバーからデスクトップにインポートしようとしましたが、同じエラーが発生します。私もsftpを試してみて、次のような結果を得ました。
dest open "/E:/backup/minecraft/backup_minecraft_24_03_2024_06:01:04.tar": No such file or directory
upload "backup/minecraft/backup_minecraft_24_03_2024_06:01:04.tar" to "/E:/backup/minecraft/backup_minecraft_24_03_2024_06:01:04.tar" failed
-v フラグで scp を使用すると、発生するエラーは次のとおりです。
scp: debug1: fd 3 clearing O_NONBLOCK
Sending file modes: C0666 471111680 backup_minecraft_23_03_2024_22:29:33.tar
Sink: C0666 471111680 backup_minecraft_23_03_2024_22:29:33.tar
scp: E:/backup/minecraft/backup_minecraft_23_03_2024_22:29:33.tar: No such file or directory
なぜこれがうまくいかないのですか?
答え1
ファイル名にコロンがあります。backup_minecraft_23_03_2024_22:29:33.tar
これらはすべて許可されない文字Windowsシステムの場合。コロンを削除(または置換)すると、ファイルは正しく転送されます。
以下は予約文字です。
<
(より小さい)>
(それより…):
(コロン)"
(二重引用符)/
(スラッシュ)\
(バックスラッシュ)|
(垂直バーまたは垂直パイプ)?
(疑問符)*
(スター)