В чем разница между scp и cp?
Я действительно новичок в командной строке и Ubuntu, и я недавно узнал, что есть scp
команда, а также cp
команда. Я пытался использовать scp
команда для перемещения каталога из точки A в точку B, но это не сработало. Тем не менее, когда я использовал cp
, это работало просто отлично.
В чем разница между ними и как определить, когда использовать один поверх другого?
5 ответов
TL;DR Читайте справочные страницы:
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.
scp
действительно для удаленного копирования по SSH. Например:
scp /path/to/local/file user@server:/path/to/target/dir/
scp
или Secure Copy в основном используется для копирования между локальным хостом и удаленным хостом или двумя удаленными хостами через ssh
cp
Команда для копирования файлов локально, то есть в системе вашего хоста.
Страницы man, на которые muru ссылается в комментариях, должны помочь вам понять, как их использовать, но есть и много уроков по этой теме.
Вы также должны узнать, что есть man
команда. Попытайся! man cp
, man scp
, man man
,
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.
а также 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). Unlike rcp(1), scp will
ask for passwords or passphrases if they are needed for authentication.
Если в именах файлов есть пробелы, scp обрабатывает их более красиво, чем cp, поэтому я часто использую их даже для копирования на локальный компьютер по этой причине.