উপায় 1: আপনার গ্রাফিকাল ফাইল ব্রাউজারে একটি ট্রি ভিউ ব্যবহার করে
আমি ধরে নিই যে আপনার আসল লক্ষ্যটি প্রতিটি ফাইলের জন্য একটি পছন্দ করা, এবং প্ররোচিত হওয়ার জন্য কঠোরভাবে কথা বলা না । তবে, আপনি যদি টার্মিনালের প্রতিটি ফাইল সম্পর্কে অনুরোধ জানাতে চান তবে নীচে ওয়ে 2 দেখুন।
বেশিরভাগ গ্রাফিকাল ফাইল ব্রাউজারগুলি একটি ট্রি ভিউ সমর্থন করে যেখানে আপনি একাধিক ডিরেক্টরি ডিরেক্টরি স্তরক্রমের একাধিক স্তর দেখতে পারেন। আপনি এই ভিউ থেকে অনুলিপি বা ফাইল সরিয়ে নিতে পারেন, স্বতন্ত্রভাবে বা সেগুলি নির্বাচন করে এবং তারপরে পুরো নির্বাচনের উপর পরিচালনা করে। এটি একাধিক ফোল্ডারগুলির ফাইলগুলির সাথেও কাজ করে।
কিছু ফাইল ব্রাউজারে, গাছের দৃশ্য সক্ষম করতে একজনকে অবশ্যই একটি পছন্দ মেনুতে যেতে হবে। ম্যাট ফাইল ব্রাউজার কাজে, এটি সর্বদা তালিকায় প্রদর্শিত থাকে। তালিকার দৃশ্যে স্যুইচ করতে ভিউ → তালিকা (অথবা Ctrl+ টিপুন 2) ক্লিক করুন । প্রতিটি ডিরেক্টরিতে এর বাম দিকে একটি ছোট ডানদিকের-ত্রিভুজ থাকে যা নির্দেশ করে এটি প্রসারিত হতে পারে। কোনও ফোল্ডার প্রসারিত করতে, সেই ত্রিভুজটি ক্লিক করুন বা →ফোল্ডারটি নির্বাচন করা হলে (ডান তীর) কী টিপুন। এই উদাহরণে, আমি সেগুলি একে একে বেছে নিয়েছি এবং তাদের গন্তব্যগুলিতে একবারে টেনে আনছি:
ধরে নিই উত্স এবং গন্তব্য একই ড্রাইভে রয়েছে, ডিফল্টরূপে চালনাগুলি টেনে নিয়ে যায়। আপনি যদি এর পরিবর্তে অনুলিপি করতে চান, আপনি Ctrlচাবিটি ধরে রাখবেন ।
তত্ত্ব, এটা ফিক্স ভুল করা সহজ এই পদ্ধতি ব্যবহার করে, কারণ (Caja সহ) সমর্থন অধিকাংশ ফাইল ব্রাউজার Ctrl+ + Zব্যাচ ক্রিয়াগুলি সমেত পূর্বাবস্থা সাম্প্রতিক কর্ম করতে। তবে, আমি এর সাথে ভাগ্য মিশ্রিত করেছি। কখনও কখনও ফাইলগুলি ভুল ফোল্ডারে ফিরে যায়।
সুসংবাদটি হ'ল আপনি বেশিরভাগ টেক্সট ডকুমেন্টগুলির সাথে কাজ করছেন বলে মনে হয় যা ছোট আকার ধারণ করে, তাই আপনি tar
কোনও ঝামেলা ছাড়াই প্রথমে একটি অতিরিক্ত ব্যাকআপ নিতে পারেন । আপনি কোন পদ্ধতি ব্যবহার না করেই তা করার পরামর্শ দিই।
উপায় 2 : ক্রিয়া find
সহ কমান্ড-ok
find
ফাইলগুলি সন্ধান করা এবং তাদের পাথগুলি ক্রিয়া -exec
এবং -execdir
ক্রিয়া সহ একটি স্বেচ্ছাসেবী বাহ্যিক কমান্ডে পাস করার সাধারণ ব্যবহার । কিন্তু find
এছাড়াও আছে -ok
এবং -okdir
যেগুলি বিজ্ঞপ্তি প্রতিটি সময় আগে তারা কমান্ড চালানো। আপনি যদি প্রতিটি ফাইল সম্পর্কে সত্যই কোনও টার্মিনালে প্রম্পট হতে চান তবে আমার মনে হয় এটি যাওয়ার উপায়।
উপরে প্রদর্শিত একই প্রভাব তৈরি করার জন্য যখন এটি করা হয় তখন:
ek@Gnar:~$ find Texts -xtype f -ok mv -t 'Glorious Destination Folder' {} \;
< mv ... Texts/Robert Frost/New Hampshire.pdf > ? y
< mv ... Texts/Robert Frost/In The Clearing.pdf > ? n
< mv ... Texts/Helen Keller/The Story of My Life.pdf > ? y
< mv ... Texts/Saki/The Short Stories of Saki.pdf > ? y
< mv ... Texts/Jane Austen/Sense and Sensibility.pdf > ? n
< mv ... Texts/Jane Austen/Pride and Prejudice.pdf > ? y
< mv ... Texts/Richard Connell/The Stolen Crime.pdf > ? n
< mv ... Texts/Richard Connell/The Most Dangerous Game.txt > ? y
< mv ... Texts/Mary Wollstonecraft Shelley/Mathilda.epub > ? n
< mv ... Texts/Mary Wollstonecraft Shelley/Frankenstein: Or, The Modern Prometheus.pdf > ? y
< mv ... Texts/W. E. B. Du Bois/The Souls of Black Folk.pdf > ? n
< mv ... Texts/W. E. B. Du Bois/Darkwater: Voices from within the Veil.htm > ? y
Texts
উত্স ডিরেক্টরিটি (যা কেবল তখনই এটি হতে পারে .
যদি আপনি এটি করতে পারেন cd
) এবং Glorious Destination Folder
প্রকৃত গন্তব্য ডিরেক্টরি দিয়ে প্রতিস্থাপন করুন ।
এটি ফাইলের জন্য একটি কমান্ড চালায়; বিপরীতে -exec
এবং -execdir
, -ok
এবং একই আদেশের অনুরোধে একাধিক সন্ধান পাথগুলি পাস করার জায়গায় -okdir
সমর্থন করে +
না \;
। ফলস্বরূপ, আপনার রূপটি ব্যবহার করার দরকার-t dest
নেই mv
। আমি করছেন করার পরামর্শ দিই, যাতে যাহাই হউক না কেন, যদিও, উভয় সাধারণভাবে সঙ্গে find
বিশেষত এই অবস্থায় তাই অনুরোধ জানানো আরো কমান্ড তারা সম্পর্কে প্ররোচনা করছি মত চেহারা।
যেহেতু এই কমান্ডটি লেখা আছে, যদি find
একটি প্রতীকী লিঙ্কের মুখোমুখি হয় যা শেষ পর্যন্ত একটি নিয়মিত ফাইলের দিকে নির্দেশ করে তবে এটি (লিঙ্কটি নয়, লক্ষ্যটি নয়) উপেক্ষা করার পরিবর্তে সরানো হয়। আপনি যদি সত্যিই কেবল একটি নিয়মিত ফাইল পরিচালনা করতে চান তবে -type f
পরিবর্তে ব্যবহার করুন -xtype f
।
আপনি একটি script
অধিবেশনে এটি করতে চাইতে পারেন যাতে আপনি কোনও ভুল করলে কী ঘটেছিল তা বুঝতে পারেন। তবে আবার, ব্যাকআপ না রাখার কোনও কারণ নেই।
উপায় 3: একটি প্রকাশ প্রকাশ করুন এবং এটি সম্পাদনা করুন
কমপক্ষে এতক্ষণ যেহেতু ফাইলগুলির নামে নতুন লাইন না থাকে, আপনি find
একটি ম্যানিফেস্ট --a ফাইল তৈরি করতে একটি সাধারণ কমান্ড ব্যবহার করে সূচনা করতে পারেন যা আপনার (যে ক্ষেত্রে সম্ভাব্য এই ক্ষেত্রে) আগ্রহী সেই ফাইলগুলির নাম তালিকাভুক্ত করে a :
find Texts -xtype f >manifest
manifest
বিবেচনাধীন ফাইলগুলির তালিকাভুক্ত ফাইলের জন্য আপনার যে নামটি পছন্দ হয় তার সাথে প্রতিস্থাপন করুন (এবং সেই সাথে বাকী দিকনির্দেশগুলি সামঞ্জস্য করুন)।
উপরের মতো, Texts
আপনার আসল উত্স ডিরেক্টরিটি প্রতিস্থাপন করুন , এটি হতে পারে .
যদি আপনি cd
এটি না হন। যাইহোক, যদি Texts
কোনও আপেক্ষিক পথ হয় (যদি তা হয় তবে এটি .
) তবে পরে আপনি যখন বাস্তবে পদক্ষেপগুলি সম্পাদন করেন তখন আপনার একই স্থানে থাকা নিশ্চিত হওয়া উচিত ।
এই find
কমান্ডটি চালানোর পরে , manifest
একটি পাঠ্য সম্পাদককে খুলুন । এই হতে পারে nano
, vim
, emacs
, gedit
, pluma
, ইত্যাদি সম্পাদক সালে আউট মন্তব্য লাইন নাম ফাইল যেগুলি আপনি না একটি স্থাপন দ্বারা স্থানান্তর করতে চান #
তাদের শুরুতে। কিছু সম্পাদক এই লাইনগুলিকে আলাদাভাবে হাইলাইট করবে এমনকি যখন এটি আপনার ফাইলটিকে যে কোনও ফর্ম্যাট হিসাবে জানায় যাতে এটির মন্তব্য রয়েছে সেটিকে স্বীকৃতি দেয় না। যদিও বেশিরভাগই তা করবে না এবং আসল কারণটি আমি এইভাবে করার পরামর্শ দিচ্ছি যে একজন মানুষ হিসাবে আপনাকে সম্ভবত কনফিগারেশন ফাইলগুলিতে মন্তব্য করার অভিজ্ঞতা থাকতে পারে (এবং সম্ভবত সোর্স কোডেও)। আমি মনে করি এটা আরও বেশি ধারণাসম্পন্ন, এবং ফলে ভুলত্রুটির সম্ভাবনা হ্রাস হয়, তুলনায় এটি লাইন আপনি চিহ্নিত করতে হবে না স্থানান্তর করতে চান।
অবশ্যই, পরিবর্তে আপনি যে ফাইলগুলি সরাতে চান না তার জন্য কেবল লাইনগুলি মুছতে পারেন। তাদের মন্তব্য করার সুবিধা হ'ল আপনি কী করেছেন তা পরে তা পরিষ্কার হয়ে যাবে।
আমার উদাহরণে, ফাইলটি সম্পাদনা করার পরে ফাইলের বিষয়বস্তুগুলির দেখতে এটি দেখতে হ'ল:
Texts/Robert Frost/New Hampshire.pdf
# Texts/Robert Frost/In The Clearing.pdf
Texts/Helen Keller/The Story of My Life.pdf
Texts/Saki/The Short Stories of Saki.pdf
# Texts/Jane Austen/Sense and Sensibility.pdf
Texts/Jane Austen/Pride and Prejudice.pdf
# Texts/Richard Connell/The Stolen Crime.pdf
Texts/Richard Connell/The Most Dangerous Game.txt
# Texts/Mary Wollstonecraft Shelley/Mathilda.epub
Texts/Mary Wollstonecraft Shelley/Frankenstein: Or, The Modern Prometheus.pdf
# Texts/W. E. B. Du Bois/The Souls of Black Folk.pdf
Texts/W. E. B. Du Bois/Darkwater: Voices from within the Veil.htm
তারপরে আপনি মন্তব্য করা রেখাগুলি ফিল্টার করতে পারেন grep
এবং ফলাফলটি এগুলিতে দেওয়ার জন্য পাইপ xargs
করতে পারেন mv
:
grep -Pv '^\s*#' manifest | xargs -d '\n' mv -t 'Glorious Destination Folder'
উপরে হিসাবে, Glorious Destination Folder
প্রকৃত গন্তব্য নাম দিয়ে প্রতিস্থাপন । এটাই; আপনার ফাইল সরানো হয়েছে আপনি অবশ্যই লিখে পারেন echo
আগে mv
কমান্ড যে প্রথম চলবে, যদি আপনি চান দেখতে।
কমান্ডটি যেভাবে কাজ করে তা হল:
grep
কমান্ড আউটপুট লাইন থেকে manifest
যে না ( -v
) (শুরু ^
ঐচ্ছিক (সঙ্গে) *
) হোয়াইটস্পেস ( \s
) একটি আক্ষরিক দ্বারা অনুসরণ #
অক্ষর। -P
পতাকা রেগুলার এক্সপ্রেশন উপভাষা হিসেবে PCRE নির্বাচন (যা সম্ভব \s
যা আমি ঐতিহ্যগত চেয়ে বেশি পাঠযোগ্য বিবেচনা [[:space:]]
)।
xargs
কমান্ড তার ইনপুট (যার আউটপুট ভাগ grep
সম্পর্কে newline-সমাপ্ত ক্ষেত্র (মধ্যে) -d '\n'
,) তারপর (সসীম সম্পর্কে newline ছাড়া) প্রতিটি ক্ষেত্রের পেস্ট কমান্ড শেষে একটি পৃথক আর্গুমেন্ট হিসাবে mv -t 'Glorious Destination Folder'
, যা এটি চালানো হয়।
-ok
আইএমএইচও সেরা উত্তর