শেল মধ্যে আবার শুরু mget


0

আমার কাছে হোস্ট বি তে একটি বড় সেট ফাইল রয়েছে এবং আমি এই ফাইলগুলি হোস্ট এ এর ​​শেল থেকে বন্ধ করার চেষ্টা করছি (হোস্ট এ শেল অ্যাক্সেসের অনুমতি দেয় যখন হোস্ট বি না করে তবে এফটিপি এক্সেস দেয়)। কাজের মাঝামাঝি সময়ে, সংযোগটি হারিয়ে গেছে এবং হোস্ট বি-তে কেবলমাত্র অর্ধেক ফাইল হোস্ট এ-তে স্থানান্তরিত হয়েছিল host এটা। কোন ধারণা ছেলেরা?

PS: হোস্ট এ এর ​​শেলটিতে ম্রেগেট উপলব্ধ নেই

উত্তর:


0

বি তে কী আছে সে সম্পর্কে তথ্য ক্যাপচার করা, এগুলি সমস্ত এ-তে পৌঁছেছে তা নিশ্চিত করা বা আপনি সেগুলি না পাওয়া পর্যন্ত পুনরায় রিটায়িং করা আরও সাধারণ জেনারেল পন্থা।

কিছুটা এইরকম

until ${allFilesTransfered:-false} ; do
    # get in file list of remote Files
ftp -in  > ${mgetTargets} <<-EOS
    open ${RemoteHost}
    $passwd
    cd $remoteDir
    ls ${fileSpec}*
    quit
    EOS

    # transport files with mget
    ftp -in <<-EOS
    open ${RemoteHost}
    $passwd
    prompt
    binary
    cd $remoteDir
    lcd $localDir
    mget $( cat mgetTargets )
    quit
    EOS

    # make a tmp file with files that are
    # now on your local machine
    cd $localDir
    ls -l > ${localDirOutput)

    # compare the 2 lists with diff,
    # if not diffs, then all files were copied
    diffOut="$(diff - ${localDirOutput} ${mgetTargets})"
case "${diffOut:-no_outputFound}" in
   no_outputFound ) allFilesTransfered=true ;;
esac
done

যেখানে mgetTargets এবং লোকাডিরআউটপুট ফাইলগুলিতে নির্দেশ করতে সংজ্ঞায়িত করা হবে।

এই সঠিক করার জন্য আমার কাছে সত্যিকারের সংস্থান বা সময় নেই তবে আশা করি আপনি ধারণাটি পেয়ে যাবেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.