Im Gegensatz zu ssh verwendet scp den P-Schalter in Großbuchstaben, um den Port anstelle des p in Kleinbuchstaben festzulegen:
scp -P 80 ... # Use port 80 to bypass the firewall, instead of the scp default
Der p-Schalter in Kleinbuchstaben wird mit scp verwendet, um Zeiten und Modi beizubehalten.
Hier ist ein Auszug aus der Manpage von scp mit allen Details zu den beiden Schaltern sowie einer Erklärung, warum Großbuchstabe P für scp gewählt wurde:
-P port Gibt den Port an, zu dem eine Verbindung auf dem Remote-Host hergestellt werden soll. Beachten Sie, dass diese Option mit einem Großbuchstaben 'P' geschrieben wird, da -p bereits für die Beibehaltung der Zeiten und Modi der Datei in rcp (1) reserviert ist.
-p Behält Änderungszeiten, Zugriffszeiten und Modi aus der Originaldatei bei.
Aktualisieren und beiseite, um einen der (stark positiv bewerteten) Kommentare anzusprechen :
In Bezug auf Abdulls Kommentar zur scp
Optionsreihenfolge schlägt er vor:
scp -P80 -r some_directory -P 80 ...
..., setzt Optionen und Parameter ein. getopt(1)
definiert klar, dass Parameter nach Optionen kommen und nicht mit ihnen durchsetzt werden dürfen:
Die Parameter, mit denen getopt aufgerufen wird, können in zwei Teile unterteilt werden: Optionen, die die Art und Weise ändern, wie getopt die Analyse durchführt (die Optionen und die Optstring in der SYNOPSIS), und die Parameter, die analysiert werden sollen (Parameter in der SYNOPSIS). Der zweite Teil beginnt mit dem ersten Nicht-Optionsparameter, der kein Optionsargument ist, oder nach dem ersten Auftreten von '-'. Wenn im ersten Teil keine Option '-o' oder '--options' gefunden wird, wird der erste Parameter des zweiten Teils als kurze Optionszeichenfolge verwendet.
Da die -r
Befehlszeilenoption keine weiteren Argumente akzeptiert, some_directory
ist sie "der erste Nichtoptionsparameter, der kein Optionsargument ist". Wie in der getopt(1)
Manpage klar dargelegt , werden daher alle nachfolgenden Befehlszeilenargumente, die darauf folgen (dh -P 80 ...
), als Nichtoptionen (und Nichtoptionsargumente) angenommen.
Auf diese Weise wird getopt(1)
das Beispiel mit dem Ende der Optionen und dem Anfang der Parameter dargestellt, die durch den nachfolgenden Text in Grau abgegrenzt werden:
scp -P80 -r some_directory -P 80 ...
Dies hat nichts mit dem scp
Verhalten zu tun und alles damit, wie POSIX-Standardanwendungen Befehlszeilenoptionen mithilfe der getopt(3)
C-Funktionen analysieren .
Weitere Informationen zur Bestellung und Verarbeitung von Befehlszeilen finden Sie in der getopt(1)
Manpage unter:
man 1 getopt