Diferente do ssh, o scp usa o switch P maiúsculo para definir a porta em vez do p minúsculo:
scp -P 80 ... # Use port 80 to bypass the firewall, instead of the scp default
A opção p minúscula é usada com scp para a preservação de tempos e modos.
Aqui está um trecho da página de manual do scp com todos os detalhes relativos às duas opções, bem como uma explicação de por que P maiúsculo foi escolhido para o scp:
-P port Especifica a porta à qual se conectar no host remoto. Observe que esta opção é gravada com 'P' maiúsculo, porque -p já está reservado para preservar os horários e modos do arquivo no rcp (1).
-p Preserva os tempos de modificação, os tempos de acesso e os modos do arquivo original.
Atualize e deixe de lado para abordar um dos comentários (altamente votados) :
Com relação ao comentário de Abdull sobre a scp
ordem das opções, o que ele sugere:
scp -P80 -r some_directory -P 80 ...
..., intercala opções e parâmetros. getopt(1)
define claramente que os parâmetros devem vir após as opções e não devem ser intercalados com eles:
Os parâmetros com os quais getopt é chamado podem ser divididos em duas partes: opções que modificam a maneira como getopt fará a análise (as opções e a opção de operação na SYNOPSIS) e os parâmetros a serem analisados (parâmetros na SYNOPSIS). A segunda parte começará no primeiro parâmetro não opcional que não é um argumento de opção ou após a primeira ocorrência de '-'. Se nenhuma opção '-o' ou '--options' for encontrada na primeira parte, o primeiro parâmetro da segunda parte será usado como a sequência de opções curta.
Como a -r
opção de linha de comando não requer mais argumentos, some_directory
é "o primeiro parâmetro que não é uma opção que não é um argumento de opção". Portanto, conforme claramente explicitado na getopt(1)
página de manual, todos os argumentos de linha de comando subsequentes que se seguem (isto é, -P 80 ...
) são assumidos como não opcionais (e não opcionais).
Então, com efeito, é assim que getopt(1)
o exemplo é apresentado com o final das opções e o início dos parâmetros demarcados pelo texto subsequente bing em cinza:
scp -P80 -r some_directory -P 80 ...
Isso não tem nada a ver com scp
comportamento e tudo a ver com como os aplicativos padrão POSIX analisam as opções de linha de comando usando o getopt(3)
conjunto de funções C.
Para obter mais detalhes com relação ao pedido e processamento da linha de comando, leia a página de getopt(1)
manual usando:
man 1 getopt