scp
私はコマンドラインと Ubuntu にはまったく不慣れで、コマンドだけでなく コマンドもあることを最近知りましたcp
。 コマンドを使用してディレクトリをポイント A からポイント B に移動しようとしましたscp
が、うまくいきませんでした。しかし、 を使用するとcp
、問題なく動作しました。
これら 2 つの違いは何ですか? また、どちらを使用するべきかをどのように判断すればよいですか?
答え1
要約man ページを読んでください:
man scp
man cp
からman scp
NAME
scp — secure copy (remote file copy program)
SYNOPSIS
scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1 ...
[[user@]host2:]file2
DESCRIPTION
scp copies files between hosts on a network. It uses ssh(1) for data transfer, and uses the same authentication and provides the same security
as ssh(1). scp will ask for passwords or passphrases if they are needed for authentication.
File names may contain a user and host specification to indicate that the file is to be copied to/from that host. Local file names can be made
explicit using absolute or relative pathnames to avoid scp treating file names containing ‘:’ as host specifiers. Copies between two remote
hosts are also permitted.
からman cp
NAME
cp - copy files and directories
SYNOPSIS
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
DESCRIPTION
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.
Mandatory arguments to long options are mandatory for short options too.
答え2
scp
実際には SSH 経由のリモートコピー用です。例:
scp /path/to/local/file user@server:/path/to/target/dir/
答え3
scp
またはセキュアコピーは主に、ローカルホストとリモートホスト間、または2つのリモートホスト間でコピーするために使用されます。ssh
このcp
コマンドは、ファイルをローカル、つまりホストのシステム内にコピーするためのものです。
muruのmanページコメントにリンクしています使用方法を理解するのに役立つはずですが、インターネット上にも多くのチュートリアルがあります。
答え4
ファイル名にスペースが含まれている場合、 scp は cp よりも適切に処理するため、ローカル マシンでのコピーでも scp をよく使用します。