ฉันคิดว่าคุณมีความคิดอยู่บ้างว่าคุณจะระบุไฟล์ที่คุณต้องการคัดลอกได้อย่างไรและคุณสามารถเขียนสคริปต์หรือชุดคำสั่งที่จะทำงานบนเครื่องระยะไกลที่ใช้การระบุนี้ได้หรือไม่ .
นอกจากนี้ฉันจะสมมติว่าคำสั่งเหล่านั้นพิมพ์บนเอาต์พุตมาตรฐานพา ธ เต็มไปยังไฟล์หรือพา ธ สัมพัทธ์กับไฟล์เทียบกับโฮมไดเร็กทอรีของผู้ใช้ SSH ที่ใช้สำหรับการคัดลอก ในตัวอย่างของฉันชื่อของสคริปต์คือ "getfilepath.sh" แม้ว่ามันจะไม่จำเป็นต้องเป็นเชลล์สคริปต์ แต่ก็อาจเป็นไฟล์ปฏิบัติการอื่นหรือแม้แต่ชุดคำสั่ง
# Script to be executed on local machine.
# put any leading local commands here.
FILE=$(ssh user@emote getfilepath.sh);
scp user@remotehost:"$FILE" .
# put any trailing local commands here.
ในรหัสข้างต้นสัญกรณ์ "$ ()" เป็นวิธีการจับเอาท์พุทมาตรฐานของคำสั่งเป็นตัวแปรเชลล์ มันค่อนข้างมาตรฐาน แต่ถ้าคุณใช้เชลล์ที่ไม่เข้าใจคุณสามารถล้อมรอบคำสั่งด้วย "back-ticks" ซึ่งเป็นเครื่องหมายเน้นเสียงทางด้านซ้ายของคีย์ 1 บนคีย์บอร์ดของสหรัฐอเมริกาส่วนใหญ่