Chvíli jsem hledal a nemohu najít definici běžného souboru. Moje cesta je trvalá (začínám od /
) a připojuji se
scp [email protected]: /path/to/picture.jpg
Výsledek dotazu na heslo a poté ...
scp: .: not a regular file
Normální soubor je soubor, který není adresářem nebo exotičtějším druhem „speciálních“ souborů jako jsou pojmenované kanály, zařízení, zásuvky, dveře atd. Symbolické odkazy nejsou ani normální soubory, ale chovají se jako své cíle, když aplikace přistupuje k obsahu souboru.
Jako zdroj kopie jste předali [email protected]:
A jako cíl cíl /path/to/picture.jpg
. Zdrojem je domovský adresář uživatele root
na počítači IP
. To je užitečné jako cíl, ale ne jako zdroj. To, co jste zadali, vyžadovalo kopírování adresáře do souboru; scp
nemůže kopírovat adresář, pokud nepožádáte o rekurzivní kopii s volbou -r
(a odmítl by přepsat existující soubor adresářem i pomocí -r
, ale to by tiše přepsal běžný soubor, pokud byl zdrojem běžný soubor).
Pokud je /path/to/picture.jpg
Na vzdáleném počítači cesta k souboru, který chcete zkopírovat, musíte název souboru přilepit ke specifikaci hostitele. Název dvojtečky :
Odděluje název hostitele od vzdálené cesty. Musíte také zadat cíl.
scp [email protected]:/path/to/picture.jpg /some/destination
Pokud chcete zkopírovat místní soubor /path/to/picture.jpg
Do vzdáleného hostitele, je třeba zaměnit argumenty. Příkazy pro kopírování Unix umístí zdroj (zdroje) jako první a cíl jako poslední.
scp /path/to/picture.jpg [email protected]:
Pokud chcete kopírovat vzdálený soubor /path/to/picture.jpg
Na stejné místo lokálně, musíte cestu zopakovat. Můžete si nechat Shell dělat opakování za vás (méně psaní, méně čitelnost).
scp [email protected]:/path/to/picture.jpg /path/to/picture.jpg
scp {[email protected]:,}/path/to/picture.jpg
Při kopírování adresáře byste měli použít -r
možnost:
scp -r [email protected]:/path/to/file /path/to/filedestination
Tato chyba se zobrazuje, protože se pokoušíte kopírovat složku a ne soubor, a měli byste je proto zkopírovat pomocí rekurzivního režimu pomocí -r
možnost
Při kopírování souborů ze vzdáleného počítače na místní počítač použijte příkaz níže
scp -r [email protected]:/path/to/file /path/to/filedestination
OR
Při kopírování souborů z místního počítače na vzdálené zařízení
scp -r /path/to/file [email protected]:/path/to/filedestination
problém se syntaxí - odstraní mezeru mezi
root @ IP:
a
/cesta
scp [email protected]:/path/to/file /path/to/filedestination
Výše uvedený příkaz zkopíruje soubor ze vzdáleného serveru do počítače. Pokud zadáte pouze scp [email protected]:
pokusí se zkopírovat domovský adresář root (scp users home .
).
Musíte tedy zadat přesnou cestu k souboru
scp [email protected]:/path/to/*.jpg /path/to/filedestination/
To bude fungovat (alespoň na mém počítači Mac)