কীভাবে ফাইলগুলি সিমলিঙ্কগুলি পিছনে রেখে যায়?


9

মূল ডিরেক্টরিতে সিমলিঙ্কগুলি রেখে আমি কীভাবে ফাইলগুলি একটি ডিরেক্টরি থেকে অন্য ডিরেক্টরিতে স্থানান্তর / অনুলিপি করতে পারি । আমি ln -sগন্তব্যটিতে সিমলিংকগুলি তৈরি জানি , তবে আমি উত্স ডিরেক্টরিতে সিমলিংকগুলি ছেড়ে আসল ফাইলগুলিকে নতুন স্থানে নিয়ে যেতে চাই। কিভাবে আমি এটি করতে পারব?


এই প্রশ্নের সেরা উত্তরটি এখানে: unix.stackexchange.com/a/228166/7000
— শ্রীধর সারনোবাত

উত্তর:


4

পৃথকভাবে ফাইলগুলি প্রক্রিয়া করুন, যেমন,

cd $original_directory  
for i in <files to process> ; do  
    mv ./$i $new_directory/  
    ln -s $new_directory/$i ./$i
done

বা, অনুলিপি করা থাকলে, mvকমান্ড লাইনটি এর সাথে প্রতিস্থাপন করুন

    cp ./$i $new_directory/  
    rm ./$i   

1
সিপি / আরএম সংস্করণ - এর সম্ভাব্য সুবিধাগুলি কী কী? দেখে মনে হচ্ছে এটি একই ধীরে ধীরে একই কাজ করে :)
— সের্গেই

@ সার্জি ওয়ান এর প্রস্থান স্থিতি পরীক্ষা করতে পারে cpএবং এটি সফল হলেই অপসারণের জন্য এগিয়ে যেতে পারে।
— lgarzo

@ লেগারজো: mvফাইলটি মোছার আগে অনুলিপিটি সফল হয়েছিল কিনা তা যদি পরীক্ষা না করে তবে এটি মূল্যবান হবে - তবে এটি একটি মারাত্মক বাগ হতে পারে mv:)
— সের্গেই

"$ New_directory" এবং "<প্রসেস করার জন্য ফাইলগুলি>" "বিশেষ ভেরিয়েবল", যেখানে আমি স্ক্রিপ্টটি দিয়েছি সর্বশেষ যুক্তিটি সর্বদা "$ new_directory" হিসাবে বিবেচিত হবে এবং যে কোনও প্রাথমিক আর্গুমেন্ট "<ফাইলগুলি প্রক্রিয়াতে>>" বিবেচিত হবে? " এটি কি আমি লেখার অন্য কোনও স্ক্রিপ্টের জন্য প্রযোজ্য? বা আপনি কি বোঝাচ্ছেন যে "$ 1" এবং "$ 2" ব্যবহার করার মতো আমার শূন্যস্থান পূরণ করা উচিত? প্রশ্নের জন্য দুঃখিত তবে আমি সাধারণভাবে কোডিংয়ে খুব নতুন।
— ডিওক্স

1
আপনি যে ডিরেক্টরিগুলি থেকে / এ স্থানান্তর করতে চান তা প্রতিস্থাপন করুন $original_directoryএবং $new_directoryতাদের এটিকে সেট করুন original_directory=/home/walt/from। স্ক্রিপ্টগুলিতে ব্যবহারের জন্য আপনাকে নিজেরাই যুক্তিগুলি পার্স করতে হবে। দেখুন builtin getopts মধ্যে man bash।
— ওয়ালটিনেটর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.