আপনি জিএনইউ findএবং জিএনইউ দিয়ে এটি করতে পারেন mv:
find /dir1 -mindepth 2 -type f -exec mv -t /dir1 -i '{}' +
মূলত, এটি যদি findপুরো ডিরেক্টরি গাছের মধ্যে যায় এবং প্রতিটি ফাইল ( -type f) যা শীর্ষ স্তরের ডিরেক্টরিতে নেই ( -mindepth 2) এর mvজন্য যায় তবে এটি যে ডিরেক্টরিটি চায় সেটিতে স্থানান্তরিত করতে এটি চালিয়ে যায় -exec mv … +। -tযুক্তি mvদেয় আপনি যদি গন্তব্য ডিরেক্টরির প্রথম উল্লেখ, যা প্রয়োজন হয় কারণ +আকারে -execরাখে সব কমান্ডের শেষে উৎস অবস্থানে। -iতোলে mvকোনো সদৃশ overwrite করার আগে জিজ্ঞাসা; আপনি -fজিজ্ঞাসা -nনা করে এগুলি ওভাররাইটের বিকল্প করতে পারেন (বা জিজ্ঞাসা বা ওভাররাইট না করে)।
স্টিফেন চেজেলাস যেমন উল্লেখ করেছেন, উপরেরগুলি কেবল জিএনইউ সরঞ্জামগুলির সাথে কাজ করে (যা লিনাক্সের উপর স্ট্যান্ডার্ড, তবে অন্যান্য সিস্টেমে নয়)। নিম্নলিখিতটি কিছুটা ধীরে ধীরে (কারণ এটি mvএকাধিকবার আহ্বান জানায় ) তবে আরও অনেকগুলি সার্বজনীন:
find /dir1 -mindepth 2 -type f -exec mv -i '{}' /dir1 ';'