
そこで、SSH を使用してネットワーク上の別のコンピューターにリモートでログインしました。ローカル デスクトップにコピーしたいファイルがたくさんあります。
私はこれに従おうとしている方法:
しかし、問題の一つは、/home/name/dir
使ってみたscp
scp [email protected]:CPUTimer.h /Users/Spicycurryman/Desktop
しかし、その後、次のエラーが発生しました:
/Users/Spicycurryman/Desktop: No such file or directory
答え1
コピーしたいファイルの名前がわかっている場合は、ファイルをコピーするssh
前にリモート サーバーにアクセスする必要はありません。次の方法で問題を解決できます。scp
scp [email protected]:~/CPUTimer.h .
これにより、のCPUTimer.h
ホーム ディレクトリからローカル マシンの現在の作業ディレクトリにファイルがコピーされます。rrtigga
pc35.cs.ucdavis.edu
scp
使用後にssh
接続してpc35.cs.ucdavis.edu
使用したい場合は、次のようにしますscp
。
scp ~/CPUTimer.h your_local_machine_IP_address:~/.
ここでローカルマシンの IP を置き換えてください ^^^
これにより、ローカル マシンでCPUTimer.h
実行しているユーザーのホーム ディレクトリにコピーされます。scp
答え2
への絶対パスを指定する必要はありませんscp
。最も簡単な方法は、何かを置きたい場所に移動して(は現在のディレクトリを参照します) を使用するか、 のような相対パスを指定することです。また、 を使用して、どこからでもホーム ディレクトリ内のディレクトリを参照することもできます。scp [email protected]:CPUTimer.h .
.
Desktop
~/Desktop
Desktop
1か所からコピーするファイルがたくさんある場合は、rsync
もっと便利:
rsync -avx [email protected]:foo .
これにより、「foo」ディレクトリ全体とその内容が現在のディレクトリにコピーされます。
答え3
sftp
SSH 経由でファイルやアーカイブを転送するための便利な代替手段です。
ターゲット ディレクトリ内で接続を開始し、FTP コマンドを使用してファイルを転送します。
$ sftp user@host
Connected to host
sftp> cd /usr/local/src
sftp> pwd
Remote working directory: /usr/local/src
sftp> put file.tgz
sftp> get file.tgz
答え4
これが発生する理由は、ファイルが入っているディレクトリを入力していないためです。次を試してください:
scp [email protected]:~/CPUTimer.h /Users/Spicycurryman/Desktop