วิธีคัดลอกไฟล์ข้ามคอมพิวเตอร์โดยใช้ SSH และ MAC OS X Terminal [ปิด]


205

ฉันกำลังพยายามคัดลอกโฟลเดอร์ / ไฟล์. profile, .rvm และ. ssh ไปยังคอมพิวเตอร์เครื่องใหม่และได้รับการตอบกลับ "ไม่ใช่ไฟล์ปกติ" ฉันรู้วิธีใช้cpและsshคำสั่ง แต่ฉันไม่แน่ใจว่าจะใช้งานอย่างไรเพื่อถ่ายโอนไฟล์จากคอมพิวเตอร์เครื่องหนึ่งไปยังอีกเครื่องหนึ่ง

ความช่วยเหลือใด ๆ จะดีมากขอบคุณ!


8
แม้ว่าคุณจะมีคำตอบ recv'd ฉันขอแนะนำ superuser.com ได้ไหม?
KevinDTimm

คำตอบ:


436

คุณสามารถทำได้ด้วยscpคำสั่งซึ่งใช้โปรโตคอล ssh เพื่อคัดลอกไฟล์ข้ามเครื่อง มันขยายไวยากรณ์ของcpเพื่อให้การอ้างอิงไปยังระบบอื่น ๆ :

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

คัดลอกบางสิ่งจากเครื่องนี้ไปยังเครื่องอื่น:

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

คัดลอกบางสิ่งจากเครื่องอื่นไปยังเครื่องนี้:

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

คัดลอกด้วยหมายเลขพอร์ตที่ระบุ:

scp -P 1234 username@hostname:/path/to/remote/file /path/to/local/file

1
ฉันคิดว่า OP ใช้วลี 'วิธีใช้เพื่อถ่ายโอน' อาจถูกเขียนใหม่เป็น 'วิธีใช้เพื่อถ่ายโอน' อาจใช้คำฟุ่มเฟือย แต่ไม่ผิดอย่างยิ่งยวด
เครื่องหมายประสิทธิภาพสูง

2
@ สูง: อาแน่นอน :) รับกาแฟมากขึ้น
อีเธอร์

2
ขอบคุณ @Ether แต่น่าเสียดายที่ฉันได้รับการตอบสนอง "ไม่ใช่ไฟล์ปกติ" สำหรับไดเรกทอรีที่ขึ้นต้นด้วย '.' เช่นโฟลเดอร์. rvm กำลังพยายามถ่ายโอนเคล็ดลับใด ๆ
alvincrespo

1
ไม่ต้องกังวลกับมัน ฉันเข้าใจแล้ว! ฉันต้องการใช้ -r (r สำหรับการเรียกซ้ำ) เพื่อนำโครงสร้างไดเรกทอรีทั้งหมด ขอบคุณมาก!
alvincrespo

1
ใช่คุณสามารถใช้-rเพื่อเรียกซ้ำหรือเพียงแค่บีบอัดไฟล์และกำหนดเป้าหมายไฟล์ zip
Eric Holmes

14

ก่อน zip หรือ gzip โฟลเดอร์:
ใช้คำสั่งต่อไปนี้:

zip -r NameYouWantForZipFile.zip foldertozip /

หรือ

tar -pvczf BackUpDirectory.tar.gz / พา ธ / ไปยัง / ไดเร็กทอรี

สำหรับการบีบอัด gzip ให้ใช้ SCP:

scp username@yourserver.com: ~ / serverpath / public_html ~ / Desktop


1

คุณอาจต้องการดู rsync ถ้าคุณทำไฟล์จำนวนมาก

หากคุณกำลังจะทำการเปลี่ยนแปลงจำนวนมากและต้องการให้ไดเรกทอรีและไฟล์ของคุณซิงค์อยู่เสมอคุณอาจต้องการใช้ระบบควบคุมเวอร์ชันเช่น Subversion หรือ Git ดูhttp://xoa.petdance.com/How_to:_Keep_your_home_directory_in_Subversion


1
ขอบคุณ @Andy เรากำลังใช้งาน SVN อยู่ที่นี่ แต่ฉันเพิ่งได้คอมพิวเตอร์เครื่องใหม่และต้องการเรียนรู้วิธีการทำทุกอย่างผ่านบรรทัดคำสั่งเนื่องจากพวกเขาชอบที่นี่ ฉันกำลังเรียนรู้ที่จะรักมันเช่นกัน :)
alvincrespo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.