দ্রষ্টব্য: নীচে প্রস্তাবিত প্রস্তাবটি পরীক্ষিত এবং সঠিকভাবে কাজ করার জন্য পরিচিত।
আপনি যে পথটি গ্লোব করছেন, তার কিছু অংশ যদি অ্যালিজ করে থাকেন তবে একক উদ্ধৃতিগুলি পরিবর্তনশীল প্রসারণ ভঙ্গ করবে।
এখানে একটি স্ক্রিপ্ট ব্যবহার করে এর ডবল globbed ফাইলের নাম ব্যবহার-কেস জন্য কোট কম্যান্ড-configure_ .tar.gz * একটি পাথ একটি পরিবর্তনশীল সঙ্গে ওরফে ব্যবহার করছে:
#!/bin/bash
USEREXECUTINGSCRIPT='admin'
SCRIPTSDIR="myscripts"
SCPUSER='terrencehoulahan'
SCPUSERPASSWD='Change-Me'
SCPHOST='1.2.3.4'
SCPDIRECTORYREMOTE='/Users/terrencehoulahan/Downloads/Ubuntu/18.04'
## Uncomment appropriate below command for your distro to install "sshpass"
#apt-get -y sshpass
#yum -y install sshpass
sshpass -p "$SCPUSERPASSWD" scp -o StrictHostKeyChecking=no $SCPUSER@$SCPHOST:"$SCPDIRECTORYREMOTE/command-configure_*.tar.gz" $(getent passwd|grep ^$(echo $USEREXECUTINGSCRIPT)|cut -d ':' -f6)/$SCRIPTSDIR/
সমাপ্ত ডাবল উক্তিটির পরে, স্থানীয় ডিরেক্টরি টার্গেটটি কেবলমাত্র / ইত্যাদি / পাসডাব্লুডি থেকে নির্দিষ্ট ব্যবহারকারীর বাড়ির ডিরটি বের করে তৈরি করা হয় ।
Scp কমান্ডটি নিজেই প্রবর্তিত sshpass
এবং ব্যবহারকারীর মিথস্ক্রিয়া ছাড়াই কমান্ডটি -o StrictHostKeyChecking=no
সম্পূর্ণরূপে স্বয়ংক্রিয়ভাবে চালিত হয় scp
। শক্ত কোডিং পাথগুলির থেকে কালজয়ী তবে ভাল দেখায় যা সময়ে সময়ে পরিবর্তিত হবে বলে আশা করা যায়।
যাইহোক, ডাবল কোট ব্যবহার করে এমন একটি উদাহরণ যেখানে আপনি গ্লোব করছেন সেই পথে চলকগুলি প্রসারিত করার অনুমতি দেওয়া দরকার। আছে HTH