লিনাক্সে পুনরাবৃত্তভাবে ফাইল এবং ফোল্ডার সরান


75

বিবেচনা:

ls -al ../public-back
drwxrwxr-x  4 apache   apache     4096 Apr 19 03:32 templates

ls -al ../public-back/templates

drwxrwxr-x  2 apache   apache    4096 Apr 19 03:33 content
drwxrwxr-x  2 apache   apache   20480 Apr 20 06:14 images
drwxrwxr-x  2 apache   apache    4096 Apr 19 03:35 video

ls -al /public

drwxrwxr-x  4 apache   apache     4096 Apr 20 09:49 templates

ls -al /public/templates

drwxrwxr-x  2 apache   apache    4096 Apr 20 09:50 content
drwxrwxr-x  2 apache   apache    4096 Apr 20 09:50 images
drwxrwxr-x  2 apache   apache    4096 Apr 20 09:50 video

/public-back/templatesঅনুমতিগুলির সাথে আমি কীভাবে পুনরাবৃত্তির বিষয়বস্তুগুলিতে স্থানান্তর করব /public/templates?


এমভি ../public-back/templates/* সর্বজনীন / টেম্পলেট /

mv -R ../public-back/templates/* public/templates/আমি এখনও প্রশ্ন সরাতে ভোট দিতে চাই।

2
এমভি: অবৈধ বিকল্প - আর @Vladislav Zorov

3
আমি সিপি -এ ../public-back/templates/ সর্বজনীন /

উত্তর:


92

আমি প্রশ্নটি ভুল বুঝে না নিলে এটি কাজ করবে:

mv /public-back/templates/* /public/templates

এছাড়াও, আপনার কাছে যদি ফাইলগুলির একটি বিশাল তালিকা না থাকে, যোগ করা -iকোনও কিছু ওভাররাইট করার আগে জিজ্ঞাসা করবে, যা ওয়াইল্ডকার্ডের মতো ব্যবহারের সময় কিছুটা সুরক্ষা যুক্ত করে *


14
এটি লুকানো ফাইলগুলি সরায় না।
আর্দা

2
দেখুন askubuntu.com/a/259386/358964 তাই লুকানো ফাইল dotglob সেটিং সরানো হবে না।
mkobit

3
দ্রষ্টব্য: এটি উপ-ডিরেক্টরিতে ফাইলগুলি ওভাররাইট করবে না। আপনি একটি Directory not emptyবার্তা পাবেন।
আর্মস্ট্রোনজস্ট

দেখে মনে হচ্ছে এটি ডিরেক্টরি শ্রেণিবিন্যাসকে সমতল করেছে। আমার জন্য মূল ফোল্ডারের মধ্যে ফোল্ডার সংরক্ষণ করেনি। আক্ষরিকভাবে একই কাঠামোর সাথে মূল ফোল্ডারটি সরানোর পরিবর্তে সমস্ত ফাইল একই ফোল্ডারে শেষ হয়েছিল।
রবার্ট নোক ২

এই সমাধান কাজ করে, কিন্তু যদি আপনি এই ত্রুটি দেখুন: mv: target '/public/templates' is not a directoryশুধু গন্তব্য ফোল্ডারটি নিজে তৈরি করুন: mkdir /public/templates
আলী শবদার

8

সিপির জন্য ম্যান পেজটিতে বলা হয়েছে:

-p same as --preserve=mode,ownership,timestamps
-r same as --recursive=copy directories recursively

চেষ্টা করুন

cp -rp /public-back/templates/* /public/templates/

13
mvপদক্ষেপের জন্য , যখন অনুলিপিটিরcp জন্য - শব্দার্থক / শব্দার্থগত পার্থক্য।
মারিয়াস বাটুক

cpতুলনায় উপায় ধীর mvcpকম্পিউটারটিকে ডিস্ক থেকে র‍্যামে সমস্ত কিছু অনুলিপি করতে বাধ্য করে এবং তারপরে আবার এটি ডিস্কে লিখুন যা ফাইলগুলির আকারের উপর নির্ভর করে দীর্ঘ সময় নিতে পারে। তবে, mvসর্বদা তাত্ক্ষণিকভাবে ঘটে কারণ কেবল লিঙ্কগুলি আবার লিখতে হয়।
tjespe

4

আমার থাম্ব ড্রাইভ থেকে আইটিগুলি আমার ওএসএমসি সিস্টেমে স্থানান্তরিত করার সময়, আমি নিম্নলিখিতগুলি খুব দরকারী বলে মনে করেছি:

find /media/Pi\ Hard\ 16GB/ -name '*' -exec mv -v {} /media/External\ HDD/Videos/ \;

এটি কীভাবে নীচে কাজ করে সে সম্পর্কে ব্যাখ্যা।

বিটিডাব্লু, উত্স বা গন্তব্য ডিরেক্টরি নামের কোনও স্থানের আগে একটি ব্যাকস্ল্যাশ যুক্ত করতে ভুলবেন না (উপরে দেখুন)।

find  finds all files and folders in the destination path.

/media/Pi Hard 16GB/ is the path searched. Escape special char such as spaces.

-name '*' filters on names. If you do not escape or quote this then 
          the shell will expand it before find sees it.

-exec     Executes a command, in our case mv

-v        Verbose, so you can see what's happening (optional)

{}        is replaced by the name of the found object.

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


2

এমভি এটি করছে বলে মনে হচ্ছে না। তবে আপনি এই ছোট্ট কৌশলটি ব্যবহার করতে পারেন, কবজির মতো কাজ করে:

tar cf - . |(cd /targetdir; tar xvf -)

এবং অনুমতি এবং সমস্ত সংরক্ষণ করে।

দ্রষ্টব্য: উপরের কোনওটিই আমার পক্ষে কাজ করেনি, এই কারণেই এই কর্মসূচী।


1
cp -a --link ../public-back/* /public/.  &&  rm -rf ../public-back

তাই গন্তব্য ডিরেক্টরিতে হার্ড লিঙ্কগুলি তৈরি করুন এবং সোর্স দিরকে সরিয়ে দিন। 'এমভি' কেবল আপনার ক্ষেত্রে কার্যকর হবে না এবং সাধারণভাবে কেবল তখন কাজ করে যখন উত্স দীর এবং গন্তব্যগুলির কোনও সাধারণ সাবট্রিজ নেই।

নোট করুন যে আমি ধরে নিচ্ছি যে প্রশ্নে 'মুভ' শব্দের অর্থ হ'ল সোর্স দির অপারেশনের পরে চলে যেতে হবে।

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