Cara menyalin file di komputer menggunakan SSH dan MAC OS X Terminal [ditutup]

205

Saya mencoba menyalin folder / file .profile, .rvm dan .ssh saya ke komputer baru dan terus mendapatkan respons "bukan file biasa". Saya tahu cara menggunakan cpdan sshperintah tetapi saya tidak yakin bagaimana menggunakannya untuk mentransfer file dari satu komputer ke komputer lain.

Bantuan apa pun akan bagus, terima kasih!

alvincrespo
sumber
8
meskipun Anda sudah mendapatkan jawaban yang sudah kembali, bolehkah saya merekomendasikan superuser.com?
KevinDTimm

Jawaban:

436

Anda dapat melakukan ini dengan scpperintah, yang menggunakan protokol ssh untuk menyalin file di mesin. Itu memperluas sintaks cpuntuk memungkinkan referensi ke sistem lain:

scp username1@hostname1:/path/to/file username2@hostname2:/path/to/other/file

Salin sesuatu dari mesin ini ke mesin lain:

scp /path/to/local/file username@hostname:/path/to/remote/file

Salin sesuatu dari komputer lain ke mesin ini:

scp username@hostname:/path/to/remote/file /path/to/local/file

Salin dengan nomor port yang ditentukan:

scp -P 1234 username@hostname:/path/to/remote/file /path/to/local/file
Eter
sumber
1
Saya pikir OP menggunakan frasa 'bagaimana cara menggunakannya untuk mentransfer' dapat ditulis ulang sebagai 'cara menggunakannya untuk mentransfer'. Wordy mungkin, tetapi tidak salah besar.
Tanda Kinerja Tinggi
2
@ High: ah memang. :) mendapat lebih banyak kopi
Ether
2
Terima kasih @ Lain-lain, tetapi sayangnya, saya terus mendapatkan respons "bukan file biasa" untuk direktori yang dimulai dengan '.' seperti folder .rvm yang saya coba transfer, ada tips?
alvincrespo
1
jangan khawatir tentang itu. Saya mendapatkannya! Saya perlu menggunakan -r (r untuk rekursif) untuk membawa seluruh struktur direktori. Terima kasih banyak!
alvincrespo
1
Ya, Anda bisa menggunakannya -runtuk rekursif, atau hanya meng-zip file dan menargetkan zip.
Eric Holmes
14

Pertama zip atau gzip folder:
Gunakan perintah berikut:

zip -r NameYouWantForZipFile.zip foldertozip /

atau

tar -pvczf BackUpDirectory.tar.gz / path / ke / direktori

untuk penggunaan kompresi gzip SCP:

scp [email protected]: ~ / serverpath / public_html ~ / Desktop

Sam
sumber
1

Anda mungkin juga ingin melihat rsync jika Anda melakukan banyak file.

Jika Anda akan membuat banyak perubahan dan ingin menjaga direktori dan file Anda tetap sinkron, Anda mungkin ingin menggunakan sistem kontrol versi seperti Subversion atau Git. Lihat http://xoa.petdance.com/How_to:_Keep_your_home_directory_in_Subversion

Andy Lester
sumber
1
Terima kasih @Andy, kami menggunakan SVN di sini di tempat kerja tetapi saya baru saja mendapat komputer baru dan ingin belajar bagaimana melakukan semuanya melalui baris perintah karena orang-orang lebih suka itu di sini. Saya belajar untuk menyukainya juga :)
alvincrespo