GNU/Linux >> Znalost Linux >  >> Linux

Jak mohu nahrát celou složku, která obsahuje další složky, pomocí sftp na linuxu?

Pro lidi, kteří skutečně chtějí přímou odpověď na tuto otázku (místo toho, aby jim bylo řečeno, aby použili něco jiného než sftp)...

put -r local/path/to/directoryName

Nahraný adresář již musí existovat v pracovním adresáři na serveru, takže jej možná budete muset nejprve vytvořit.

mkdir directoryName

Zde najdete podrobné vysvětlení, jak kopírovat adresář pomocí scp . Ve vašem případě by to bylo něco jako:

$ scp -r foo [email protected]:/some/remote/directory/bar

Tím se zkopíruje adresář "foo" z místního hostitele do adresáře "bar" vzdáleného hostitele.Zde -r je -rekurzivně kopírovat celé adresáře.

Můžete také použít rcp s podobnou syntaxí. Jediný rozdíl mezi nimi je, že scp používá zabezpečený shell a rcp používá vzdálený shell.

BTW Chyba „Nelze kanonizovat“, kterou jste zmínili, se objeví, když sftp server nemůže získat přístup k souboru/adresáři uvedenému v příkazu.

AKTUALIZACE :Pro uživatele, kteří chtějí používat put konkrétně se podívejte na odpověď Bena Thielkera zde.


sftp> mkdir source
sftp> put -r source
 Uploading source/ to /home/myself/source
 Entering source/
 source/file1
 source/file2


Linux
  1. Jak rekurzivně stáhnout složku přes FTP na Linuxu

  2. Jak mohu spustit dos2unix v celém adresáři?

  3. Jak stáhnout celý adresář a podadresáře pomocí wget?

  1. Jak mohu najít soubor/adresář, který by mohl být kdekoli na příkazovém řádku linuxu?

  2. Jak získám celý adresář na sftp?

  3. Jak zjistím, jakou verzi Linuxu používám?

  1. Jak nahrávat nebo stahovat soubory/adresáře pomocí sFTP v Linuxu

  2. Jak zálohovat celý systém Linux pomocí Rsync

  3. PSCP:Nahrajte celou složku, Windows do Linuxu