मुझे लगता है कि आपको पहले से ही इस बात का अंदाजा है कि आप उस फ़ाइल की पहचान कैसे करेंगे, जिसे आप कॉपी करना चाहते हैं, और जो आप कर सकते हैं, या पहले से ही एक स्क्रिप्ट या कमांड का सेट है, जो रिमोट मशीन पर चलेगा, जो इस पहचान को करता है। ।
इसके अलावा मैं यह भी मान लूंगा कि वे कमांड मानक आउटपुट पर फाइल के लिए पूर्ण पथ, या फाइल के सापेक्ष पथ, 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.
उपरोक्त कोड में, "$ ()" संकेतन शेल चर के रूप में कमांड के मानक आउटपुट को कैप्चर करने का एक तरीका है। यह काफी मानक है, लेकिन यदि आप एक ऐसे शेल का उपयोग कर रहे हैं जो इसे नहीं समझता है, तो आप इसके बजाय "बैक-टिक्स" के साथ कमांड को घेर सकते हैं, जो कि अधिकांश यूएस कीबोर्ड पर 1 कुंजी के बाईं ओर उच्चारण चिह्न हैं।