scpを使用してサーバーからファイルを抽出するには?

scpを使用してサーバーからファイルを抽出するには?

私はAマシンにいて、Bマシンからファイルを抽出したいと思います。

A$ scp <myuserid>@hostB:<path of file in B> .

それは言う:

scp: <path of file in B>: No such file or directory

ただし、マシンBでは、このファイルがこのパスに存在します。

何が間違っていますか?

答え1

ファイルが指定されていません。コロンの後にファイル(パスを含む)を追加する必要があります。

A$ scp <myuserid>@hostB:/absolutepath/file .

または

A$ scp <myuserid>@hostB:relativepath/file .

ホームディレクトリへの相対パス。

他のユーザー(たとえば、AとBの同じユーザー)を指定しない限り、以下は必要ありません。@

A$ scp hostB:/path/file .

答え2

$ scp username@remoteip:remote_location_file /location/where/you/save

コメントと同様に:これはファイルをコピーするときにのみ機能します。ディレクトリをコピーするには、次のようにします。

$ scp -r username@remoteip:remote_location_directory /location/where/you/save

私たちはすでに2番目のコマンドで再帰オプションを見ました。このオプションは、必要に応じて利用可能な他のオプションと一緒に一覧表示されます。マニュアルページから:

  • -r
    ディレクトリ全体を再帰的にコピーします。

  • -P port
    接続するリモートホストのポートを指定します。 -pはrcpでファイルの時間とモードを保存するためにすでに予約されているため、このオプションは大文字の「P」で書かれています。

  • -p
    ソースファイルの変更時間、アクセス時間、モードを維持します。

  • -v

    詳細モード。 scpとsshに進行状況に関するデバッグメッセージを印刷させます。これは、接続、認証、および構成の問題をデバッグするのに役立ちます。

答え3

正しい scp パスを使用する

scp ssh://user@hostname/tmp/foo.txt .

答え4

DMZユーザーとパスワードがある場合は、ローカルシステムからDMZからローカルLinuxシステム(プール)への双方向のSCPを簡単に実行できます。現在ログインしているパスワードにコピーされることを意味しますabc.textfolder2

scp user@111111:folder1/folder2/abc.txt .

パスワードを尋ねます。

それだけです。

これで、ローカルコンピュータのフォルダ、サブフォルダ、ファイルをDMZに送信しようとしています。

usr@localmachine:~/abc/defs>  scp -r folder/ usr@111111:vkrishna/docker/

パスワードをもう一度尋ねます

:はリモートコンピュータのルートフォルダ、vkrishnaはフォルダの1つであり、dockerサブフォルダでもあります。ローカルdefsフォルダには、folder完全に転送したいフォルダがあります。

良い/abc/defs/folder

関連情報