আমি নামের একটি ফাইল তৈরি করতে চেয়েছিলাম test। দুর্ঘটনাক্রমে আমি mkdir testপরিবর্তে চালাচ্ছি touch test।
testনামের কোন ফাইলটিতে ডিরেক্টরি রূপান্তর করা সম্ভব test?
testএকই নামের সাথে ডিরেক্টরিতে কোনও ফাইল রূপান্তর সম্পর্কে কী ?
আমি নামের একটি ফাইল তৈরি করতে চেয়েছিলাম test। দুর্ঘটনাক্রমে আমি mkdir testপরিবর্তে চালাচ্ছি touch test।
testনামের কোন ফাইলটিতে ডিরেক্টরি রূপান্তর করা সম্ভব test?
testএকই নামের সাথে ডিরেক্টরিতে কোনও ফাইল রূপান্তর সম্পর্কে কী ?
উত্তর:
আমি যে কোনও ইউনিক্স বা লিনাক্সকে স্পর্শ করেছি তার পক্ষে এটি সম্ভব নয়।
কিছু পুরানো ইউনিক্সের অধীনে ডিরেক্টরিগুলি ফাইলগুলি হয়, বিশেষভাবে চিহ্নিত, তবে এখনও ফাইল। catউদাহরণস্বরূপ, আপনি সানওএসের অধীনে একটি ডিরেক্টরি পড়তে সক্ষম হতেন। অনেকগুলি আধুনিক ফাইল সিস্টেমে বি + ট্রি বা অন্য কোনও ডিস্কের ডেটা কাঠামো হিসাবে ডিরেক্টরি থাকতে পারে। সুতরাং কোনও ফাইলকে ডিরেক্টরিতে বা তদ্বিপরীত রূপান্তরিত করার জন্য সর্বদা একই নামে মুছে ফেলা এবং পুনর্নির্মাণের প্রয়োজন হবে।
না এরকম কোনও আদেশ নেই কারণ এতে একেবারেই কোনও বক্তব্য থাকবে না। আপনার প্রশ্নটি একটি ফ্ল্যাট আয়তক্ষেত্রে কোনও বাক্সকে রূপান্তর করার উপায় জিজ্ঞাসার মতো। আপনি বাক্সের (ডিরেক্টরি) জিনিসগুলির সাথে কী করবেন? আয়তক্ষেত্রটি যে বাক্সটি থেকে এসেছে তার সাথে কীভাবে মিলবে?
ফাইল এবং ডিরেক্টরিগুলি সম্পূর্ণ আলাদা ফাংশন সরবরাহ করে। ডিরেক্টরিটি আসলে * নিক্স সিস্টেমে থাকা একটি ফাইল , এটি কেবলমাত্র সিস্টেমের অভ্যন্তরীণ ক্ষেত্রে প্রযোজ্য এবং আপনি, ব্যবহারকারী, যা দেখেন তা নয়। সুতরাং, কোনও ফাইলকে ডিরেক্টরিতে রূপান্তর করা বা তদ্বিপরীত, সর্বদা ফাইলটি মুছে ফেলা এবং ডিরেক্টরি তৈরি করা জড়িত। আপনি যে সর্বোত্তম আশা করতে পারেন তা হ'ল একই ইনোডটি ব্যবহার করা হবে তবে এটির পক্ষে খুব বেশি কিছু নয়।
আপনি যা চান তা করতে একটি ফাংশন তৈরি করুন। ( bashবা অন্যান্য বোর্ন / পসিক্স যেমন শেল ধরে নেওয়া হয়েছে)
$ dir2file() { rmdir -- "$1" && touch -- "$1";}
$ mkdir adir
$ dir2file adir
$ ls -l adir
-rw-r--r-- 1 xtian xtian 0 2014-03-04 14:59 adir
$
আমি ইচ্ছাকৃতভাবে ব্যবহার করি rmdirযা adirডিরেক্টরি না হলে খালি না হলে ( -fজোর করার দরকার নেই ) ব্যর্থ হবে । সফল touchহলেই চলবে rmdir।
আপনি নিজের শেল কাস্টমাইজেশন ফাইলের .bashrcজন্য ফাংশন সংজ্ঞা রাখতে পারেন (এর জন্য bash)।
--?
--চিহ্ন, যাতে পতাকার শেষ rmdirএবং touchকিছু জানি গত এটি একটি ফাইলের নাম, এমনকি যদি এটা দিয়ে শুরু হয় -।
আপনি কেন এটি করতে চান তা ভাবছেন তাদের জন্য, এই থ্রেডটি অনুসরণ করুন:
স্পষ্টতই ফার্মওয়্যারের একটি বাগ ফাইলের ডিরেক্টরিতে প্রবেশের ক্ষেত্রে বিটটি ফ্লিপ করে, ওএসকে এটি কোনও ফাইলের পরিবর্তে ফোল্ডার মনে করে।
যদিও আমার কাছে লিঙ্কসিস রাউটারের প্রশ্ন নেই, কিছু আমার সমস্ত .jpg ফাইলকে খালি ফোল্ডারে পরিবর্তন করেছে। যদি কোনওভাবে বিটটি ফ্লিপ করতে হয় (বা যাই হোক না কেন) যে বলে যে এনটিএফএস ডিরেক্টরি এন্ট্রি একটি ফোল্ডার বনাম একটি ফাইল, আমি এটি সম্পর্কে জানতে চাই।
2 বছরের দীর্ঘ থ্রেডের একটি সমাধান বলেছে যে যদি ফোল্ডারগুলির সাথে ব্যবহৃত ফাইলগুলি যে হার্ড-ড্রাইভগুলি ম্যাক চালিত ওএস / এক্স এর সাথে সংযুক্ত থাকে, ম্যাক তাদের আবার ফাইল হিসাবে দেখবে এবং তারা ম্যাকের একটি ফোল্ডারে অনুলিপি করা যায়। এটি চেষ্টা করার জন্য আমার কাছে ম্যাক নেই, তাই যদি কেউ বিটটি ফ্লিপ করার কোনও উপায় জানেন ...
প্রথমত, টার্মিনালে লাভ এক্সেস এবং চালানো ls -al fileসঙ্গে ফাইল আপনি যে ফাইলটি প্রকৃত ফোল্ডারে ফিরে রূপান্তর করতে চান হচ্ছে। যদি ফাইল এবং উপ-ডিরেক্টরি তালিকাভুক্ত থাকে তবে এর অর্থ আপনার "ফাইল" এর আগে আসল সামগ্রী সহ ফোল্ডার ছিল এবং আপনি চালিয়ে যেতে পারেন:
এক্সিকিউট:
sudo chmod 700 /
অথবা
sudo chmod 700 file
সিস্টেমটি পুনরায় আরম্ভ করুন এবং টার্মিনাল অ্যাক্সেস পুনরুদ্ধার করুন এবং সম্পাদন করুন:
sudo chmod 744 /
অথবা
sudo chmod 744 file
মনে রাখবেন: "ফাইল" আপনি যে ফাইলটিকে ফ্যাক্টরিতে ফোল্ডারে রূপান্তর করতে চান তার দ্বারা প্রতিস্থাপন করা উচিত।
এই সমস্যাটি সমাধান করার জন্য এটি কেবল একটি স্বেচ্ছাসেবী উপায় তবে এটি অনুমতি বিচ্ছিন্নতা তৈরি করে যা আপনি হয় fsck -fসমাধান করতে ব্যবহার করতে পারেন (অবশ্যই আন-মাউন্ট থাকা অবস্থায়) বা প্রয়োজন অনুসারে ম্যানুয়ালি নতুন অনুমতি সেট করে।
তবুও, এটি পূর্বে একটি খালি ফোল্ডার ফাইলটি মুছতে না পারার একটি প্রমাণিত উপায়।
rm -f test && touch testএটি বাদে, আমি সত্যিই জানি না