জিএনইউ পেয়েছেন?
এর gnu সংস্করণ lsরয়েছে --group-directories-first। এবং cpআছে -t।
জিএনইউ নেই?
যেসব সিস্টেমে জিএনএস নেই ls, সেগুলিগুলিতে / এবং উপযুক্ত বিকল্পগুলির findসাথে আপনার সেরা বেট দুটি ধারাবাহিক কল ।-maxdepth n-mindepth n-type t
find . -maxdepth 1 -mindepth 1 -type d
find . -maxdepth 1 -mindepth 1 \! -type d
ফাইলগুলি অনুলিপি করার জন্য, প্রথমে লক্ষ্য সহ, আপনাকে একটি স্ক্রিপ্ট লিখতে হবে যা প্রথম যুক্তিটি সংরক্ষণ করে, তারপরে ব্যবহার করে shiftএবং যুক্তিকে শেষ পর্যন্ত যুক্ত করে।
#!/bin/sh
target="$1"
shift
cp -r -- "$@" "$target"
সতর্ক থেকো!
যদি আপনি এগুলি একসাথে ব্যবহার করার পরিকল্পনা করছেন - অর্থাত্, তালিকাটি সংগ্রহ করে findবা ls(সম্ভবত ব্যবহারের মাধ্যমে xargs) তালিকাটি সংগ্রহ করে এবং cp(বা একটি cpমোড়ক) দিয়ে দেওয়ার ক্ষেত্রে, আপনার অবশ্যই সচেতন হওয়া উচিত ফাইলগুলির তালিকাগুলি পার্সিংয়ে কী কী বিপদ রয়েছে (মূলত, ফাইলের নামগুলি পারে নিউলাইনের মতো অক্ষর রয়েছে যা আপনার স্ক্রিপ্টটিকে বিশৃঙ্খলা করতে পারে)। বিশেষ করে, দেখব find'র -execএবং -print0বিকল্প এবং xargsএর -0বিকল্প।
দক্ষতার সাথে ডিরেক্টরি গাছ অনুলিপি করার জন্য একটি বিকল্প সরঞ্জাম।
পরিবর্তে আপনি ব্যবহার করতে চাইছেন rsync; এটির কার্যকারিতা প্রচুর রয়েছে যা আপনার কাজটি আরও সহজ করে তুলতে পারে।
lsএকটি--group-directories-firstসুইচ আছে।