কিভাবে একটি ক্রমবর্ধমান সংখ্যাযুক্ত dir মধ্যে ফাইল কপি করবেন?


1

উদাহরণস্বরূপ, যদি ডির 3 হয়:

mkdir 4; cp file 4

দ্য dir বলা যেতে পারে 3 other text। এখনও কোন টেক্সট থাকা প্রয়োজন mkdir 4 বর্ধিত সংখ্যা ছাড়াও। সর্বোচ্চ সংখ্যা সনাক্ত করা প্রয়োজন।

উত্তর:


1

আসুন অনুমান করুন আপনার ক্রমিক সংখ্যাযুক্ত ডিরেক্টরি রয়েছে: ' dirnameN '
কোথায় ' N 'সংখ্যা।

আপনি সর্বোচ্চ নম্বর (প্যারেন্ট ডিরেক্টরি থেকে) খুঁজে পেতে পারেন,

find . -type d -name dirname\* | sed 's|dirname||' | sort -n | tail -1

সুতরাং, আপনি এটির ফিল্টার করতে আপনার ডিরেক্টরি নামগুলির প্যাটার্নটি ব্যবহার করুন (' sed ') এবং সংখ্যা ছেড়ে।
তারপর, আপনি সংখ্যালঘুভাবে শেষ সংখ্যা খুঁজে পেতে।

তারপরে, আপনি এটিতে একটি যুক্ত করবেন এবং একই প্যাটার্ন ব্যবহার করে আপনার পরবর্তী ডিরেক্টরিটি তৈরি করবেন।

বলুন, ভালো কিছু,

dirnamePattern=dirname
lastDirname=11
newDirname=$((lastDirname+1))
newDirname=${dirnamePattern}${newDirname}

তোমাকে দিবে ' dirname12 '।


1

নিম্নলিখিত একটি লাইন জিনিস করতে হবে:

mkdir $(($(find . -type d | sed -e 's/[^0-9]*//g' | sort -n | tail -n 1)+1))

ফোল্ডার দেওয়া হয়েছে:

1 something
3 other text
some 5 thing
2 test

এই নামে একটি ফোল্ডার তৈরি করে 6

যদি আপনি তারপর নামে একটি ফাইল অনুলিপি করতে চান file, শুধু এই মত কিছু করুন:

name=$(($(find . -type d | sed -e 's/[^0-9]*//g' | sort -n | tail -n 1)+1)); mkdir $name; cp file $name

1
@ এনএনবিসি আনন্দিত এটা সাহায্য করেছে। পোস্টটি বামে স্কোরের অধীনে চেকবাক্সটি ক্লিক করতে ভুলবেন না যদি এটি আপনার প্রশ্নের উত্তর দেয়! :)
slhck
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.