একটি অদ্ভুত নাম সহ একটি ফাইল কীভাবে মুছবেন?


33

আমি এমন একটি প্রোগ্রাম লিখেছিলাম যা পসিক্স মেমরি-ম্যাপিং ফাংশন ব্যবহার করে ( mmap)

প্রোগ্রামটি একটি ফাইল নেয় ( a.dat) এবং মেমরি ম্যাপ করে এটি পড়ার / লেখার জন্য।

প্রোগ্রামে ত্রুটির কারণে, আমি যখনই প্রোগ্রামটি চালিত করি তখন কিছু অদ্ভুত নাম (যেমন, ?d?P?^z??d?P?^z?) নামের একটি ফাইল তৈরি হয়। ত্রুটিটি সমাধান হয়েছে তবে আমি ফাইলগুলি মুছতে সক্ষম নই।

আমি কমান্ড লাইন ব্যবহার করে বা উইন্ডো ম্যানেজার থেকে নির্বাচন / মোছার মাধ্যমে এটি মুছতে সক্ষম নই।

তাহলে আমি কীভাবে এটি মুছব? আমি উবুন্টু 11.04 ব্যবহার করছি।


1
এমনকি আপনি সহজেই ফাইলের নাম টাইপ করতে না পারলেও গ্রাফিকাল ফাইল ম্যানেজার থেকে মুছে ফেলা ঠিকঠাক কাজ করা উচিত। আপনি কি ত্রুটি পাচ্ছেন?
থমাস

2
@ আদিত্য, একক উদ্ধৃতি ( rm '?d?P?^z??d?P?^z?') দিয়ে তাদের নামগুলি বের করার সময় কমান্ড লাইন থেকে এই জাতীয় ফাইলগুলি মুছতে আমার কোনও সমস্যা নেই । তুমি কি চেষ্টা করেছ?
ফ্রিডরিক হামিদি

গ্রাফিকাল উইন্ডো ম্যানেজার থেকে মুছে ফেলা ফাইল 'ফাইলের নাম' মুছতে পারে না। @ ফ্রিডরিক হামিদি একটি ফাইল মুছতে আমাকে সাহায্য করার জন্য ধন্যবাদ। তবে অন্যটির নাম '? মি? পি ???)? মি? পি ???)' মুছে ফেলা হচ্ছে না ... ত্রুটি বার্তায় "আরএম:" মি? পি মুছে ফেলতে পারে না? ??? ? পি ???) ': এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই "
এ কে

1
@ আদিত্য, অন্যান্য ফাইলের অবশ্যই তার নামে মুদ্রণযোগ্য অক্ষর থাকতে হবে। নিম্নলিখিত পদক্ষেপগুলি ব্যবহার করে দেখুন: 1 / সমস্ত বৈধ ফাইল folder ফোল্ডারটির বাইরে, 2 / ইস্যুটি rm *ফোল্ডারের ভিতরে inside
ফ্রিডরিক হামিদি

1
ফাইলের নাম টাইপ করার সময় উদ্ধৃতি দিয়ে শুরু করার চেষ্টা করুন, তারপরে এটি কাজ করার সাথে সাথে অটো সমাপ্তিটি ব্যবহার করুন (এক বা দুটি অক্ষরের পরে)। শেল অটোটির নাম সম্পূর্ণ করতে অটো সমাপ্তি [ট্যাব] কী টিপবে। নামগুলি সঠিকভাবে পালাতে আপনি আরও সফল হতে পারেন।

উত্তর:


45

rm -i -- *আপনাকে প্রতিটি ফাইল মুছতে অনুরোধ করবে। যদি প্রচুর ফাইল থাকে তবে আপনি '*' কে সংকীর্ণ ম্যাচে পরিবর্তন করতে পারেন। --প্রক্রিয়াকরণের অপশন স্টপ, তাই নামের একটি ফাইল -dদ্বারা সরানো হবে rmসফলভাবে।

আমি অতীতে এটি ব্যবহার করেছি এবং আপনি কোনও বিশেষ চরিত্র বা 2 পছন্দ করেন না এমনটি হিট না হওয়া পর্যন্ত এটি কাজ করে।


1
উদাহরণস্বরূপ এটি -d নামক কোনও ফাইলের জন্য কাজ করে না।
এসসিও

2
@ এসসিও যদি এটি আপনার পক্ষে কাজ না করে এবং আপনার সংস্করণ অনুসারে rmআপনি কাজ করতে পারেন rm -i -- * তবে --rm এর কিছু সংস্করণ বলছে যে এর পরে আর কোনও কমান্ড লাইন লাইন সুইচ নেই --এবং আরও ফাইলগুলি নাম হিসাবে বিবেচনা করা হবে।
জিমআর

1
ব্যবহার হচ্ছে: আমি এই উত্তর মন্তব্য অন্তর্ভুক্ত করা উচিত @JimR দ্বারা প্রস্তাবিত মনে --মধ্যে rmকমান্ড।
ফিলিপ আলভারেজ

16

আপনি ls -liসমস্ত ফাইল তাদের ইনোড দ্বারা প্রদর্শন করতে ব্যবহার করতে পারেন । তারপরে ফাইলটি সরাতে এই কমান্ডটি চালান:

find . -inum ${INODE_NUM} -delete

আমি -maxdepth 1নিরাপদে থাকার জন্য আমার সন্ধানে যুক্ত করেছি:

find . -maxdepth 1 -inum ${INODE_NUM} -delete

1
কড়া কথা বলতে গেলে ls -iযথেষ্ট ভাল good
স্কট

lsফাইল মুছে না। ওপি এটি চায়
ফিলিপ আলভারেজ

4
আপনার উত্তরের প্রথম লাইনটি বলে, "আপনি ls -liসমস্ত ফাইল তাদের আইনের মাধ্যমে দেখানোর জন্য ব্যবহার করতে পারেন ” "আমি উল্লেখ করছি যে ls -iফাইলের নাম এবং তাদের সাথে সম্পর্কিত ইনোড নম্বর পেতে যথেষ্ট ভাল enough (তবে অবশ্যই ls -iaযদি আপনি ডট-ফাইলগুলি অন্তর্ভুক্ত করতে চান তবে আপনার প্রয়োজন ))
স্কট

ভুল ফাইল নাম ব্যবহার কমানোর জন্য কেবল -deleteবিকল্পটি পাস করা ভাল find
স্কামকোডার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.