長い間見つかりましたが、一般ファイルの定義が見つかりませんでした。私のパスは永続的で始まり、/
次に接続されます。
scp root@IP: /path/to/picture.jpg
結果はパスワードを要求します...
scp: .: not a regular file
答え1
ディレクトリをコピーするときは、次の-r
オプションを使用する必要があります。
scp -r root@IP:/path/to/file /path/to/filedestination
答え2
通常のファイルはディレクトリやエキゾチックなファイルではありません。「特殊」ファイル名前付きパイプ、デバイス、ソケット、ゲートなどシンボリックリンク通常のファイルではありませんが、アプリケーションがファイルの内容にアクセスすると、ターゲットファイルのように動作します。
これをコピーのソースroot@IP:
と宛先に渡します。/path/to/picture.jpg
ソースはroot
コンピュータ上のユーザーのホームディレクトリですIP
。これはターゲットとしては便利ですが、ソースとしては便利ではありません。ディレクトリをファイルにコピーするために必要な入力。scp
そのオプションを使用して再帰コピーを要求しないと、ディレクトリをコピーできません-r
。それでも、既存のファイルをディレクトリで上書きすることを拒否します-r
が、ソースが通常のファイルを使用すると、通常のファイルが自動的に上書きされます。)
リモートコンピュータにコピーするファイルのパスの場合は、/path/to/picture.jpg
ファイル名をホスト仕様に貼り付ける必要があります。コロンは:
ホスト名とリモートパスを区別します。目的地も指定する必要があります。
scp root@IP:/path/to/picture.jpg /some/destination
ローカルファイルをリモートホストにコピーするには、/path/to/picture.jpg
パラメータを交換する必要があります。 Unix コピーコマンドはソースを最初に配置し、ターゲットを最後に配置します。
scp /path/to/picture.jpg root@IP:
リモートファイルを同じ場所にローカルにコピーするには、/path/to/picture.jpg
パスを繰り返す必要があります。シェルに繰り返し操作を実行させることができます(入力回数が少なく読みやすくなります)。
scp root@IP:/path/to/picture.jpg /path/to/picture.jpg
scp {root@IP:,}/path/to/picture.jpg
答え3
ファイルの代わりにフォルダをコピーしようとしているため、エラーが発生するため、-r
ファイルを再帰的にコピーするオプションを使用する必要があります。
リモートコンピュータからローカルコンピュータにファイルをコピーするときは、次のコマンドを使用します。
scp -r root@RemoteIP:/path/to/file /path/to/filedestination
または
ローカルコンピュータからリモートコンピュータにファイルをコピーする場合
scp -r /path/to/file root@RemoteIP:/path/to/filedestination
答え4
scp root@IP:/path/to/file /path/to/filedestination
上記のコマンドは、リモートサーバー上のファイルをコンピュータにコピーします。入力すると、scp root@IP:
ルートのホームディレクトリ(scp users home)をコピーしようとします.
。
したがって、ファイルの正確なパスを指定する必要があります。