আমার হোম ডিরেক্টরিতে ~ (টিলডে) নামে একটি ফাইল রাখুন


46

আমি শুধু লক্ষ্য করেছি যে, আমি নামক কোনো ফাইল আছে ~আমার মধ্যে ~-directory।

$ ls -la ~
...
-rw-r-----  1 x1 x1  733962240 Mar  1 17:55 ~
...

কোন ধারণা কিভাবে আমি করতে পারেন mvবা rmকি?


এটি আই-নোড দিয়ে মুছতে চেষ্টা করুন।
gronostaj

উত্তর:


55

খুব সহজেই চূড়ান্ত সমাধান যখন ফাইলগুলির ক্ষেত্রে আসে যা সাধারণ মাধ্যমে মুছে ফেলা যায় না:

ls -il 

প্রথম কলামে ফাইলগুলির ইনোড নম্বর প্রদর্শিত হবে।

find . -inum [inode-number] -exec rm -i {} \;

এটি যাচাইয়ের পরে নির্দিষ্ট ইনড-নম্বর সহ ফাইলটি মুছবে।


এটি কাজ করে। রিকির দ্বারা সমাধানটি খুব ভাল, তবে আমি চেষ্টা করিনি। অনেক ধন্যবাদ!
scrrr

হ্যাঁ, রিখির উত্তরও ভাল। এবং আমি মনে করি এটি আরও ভাল কারণ এটি সহজ।
আন্দ্রে রেজেন্টভ

সুন্দর, +1 আমি আপনার উত্তরটি -deleteপরিবর্তে ব্যবহারের জন্য পরিবর্তন করেছি -exec, তখন বুঝতে পেরেছি যে আপনি ব্যবহার করছেন rm -iযা একটি ভাল ধারণা তাই আমি ফিরে এসেছি। দুঃখিত।
টেরডন

চিন্তা করবেন না। যখন কেউ আমার উত্তরগুলি তাদের সময়ের জন্য উপযুক্ত মনে করে সর্বদা খুশি :)
স্কিজি

এই উত্তরটি আমার পক্ষে কার্যকর হয়নি। উবুন্টু 14.04 এলটিএস
খোফি

46

আপনার সেই ফাইলটি ~/~(উদ্ধৃতি ব্যতীত) হিসাবে উল্লেখ করতে সক্ষম হওয়া উচিত কারণ শিলার ~প্রারম্ভে টিলড-সম্প্রসারণ কেবল টিলড ( ) প্রয়োগ করে ।


17
এছাড়াও, ফোল্ডারে গিয়ে এবং rm ./~একই কারণে আপনি বলেছিলেন
কার্লোস ক্যাম্পাদ্রেস

@ কার্লোস ক্যাম্প্ডাররা এর উত্তর তৈরির বিষয়টি বিবেচনা করছেন। অন্যান্য উত্তরের তুলনায় আমি এটিকে "সেরা" এবং সর্বাধিক সহজ সমাধান হিসাবে বিবেচনা করব কারণ ./~আক্ষরিক অর্থ " ~বর্তমান ডিরেক্টরিতে নামক একটি ফাইল বা ফোল্ডার " । পালানোর অক্ষর বা ইনোড উল্লেখের মতো কোনও হ্যাক নেই।
ADTC

@ এডটিসি: আমার উত্তরের প্রতিরক্ষা হিসাবে, এর জন্য সিডাব্লুডি পরিবর্তন করার দরকার নেই, যদিও এটি ব্যবহার করছে ./~। পাঁচ বছর পরে, আমার স্মৃতিটি কিছুটা অস্পষ্ট, তবে আমি মনে করি সে কারণেই আমি ~/~আরও সাধারণের চেয়ে পরামর্শ দিয়েছি ./~: প্রশ্নটি বিশেষত " ~[ওপি'র] হোম ডিরেক্টরিতে নামক একটি ফাইল" বোঝায় ; "বর্তমান ডিরেক্টরিতে" নয়।
ধনী 18

@rici এটি উপলব্ধি করে, এবং প্রশ্নের প্রসঙ্গে এটি উপযুক্ত হবে। তবে আমি উত্তরগুলি দেখতে দেখতে চাই যা সাধারণ, বা প্রশ্নের নির্দিষ্ট ক্ষেত্রে আরও ব্যাখ্যা দেওয়ার আগে প্রথমে সাধারণভাবে কথা বলে। এটি আমার প্রতিরক্ষা: D
ADTC

20

এটি উদ্ধৃত করুন ( rm '~') অথবা এটি থেকে পালাতে ( rm \~)।


এটি সর্বদা হয় তাদের মধ্যে (যেমন উদাহরণস্বরূপ $), বা --ফাইলের নামটিকে যুক্তি হিসাবে ব্যাখ্যা করা থেকে বিরত রাখতে যুক্ত করুন: rm -- -iফাইলটি নামকরণ করে -i; rm -- *আপনি যখন বর্তমান ডিরেক্টরিতে সমস্ত ফাইল মুছতে চান তার জন্যও দরকারী : কোনও rm -f *ফাইলের নামকরণের কারণে দুর্ঘটনা ঘটে না ।


হুঁ, না এটি কাজ করে না বলে মনে হচ্ছে .. আমি একক উদ্ধৃতি, পালানো এবং ব্যাকটিক চেষ্টা করেছিলাম .. সে ফাইলটি তুলবে না। বলে যে এটির অস্তিত্ব নেই বা
inter

@ এসআরআরআর আপনার শেল কি?
ড্যানিয়েল বেক

ব্যাশ। তবে সমস্যাটি ইনোড পদ্ধতিতে সমাধান হয়েছে।
scrrr

@ এসএসআরআর খুশী হলেন আপনার সমস্যাটি সমাধান হয়েছে তবে এখন আমি জানতে চাই কেন বাশ পলায়নকারীরা আপনার সিস্টেমে যেমনভাবে কাজ করে না তেমনি এটি আমার ক্ষেত্রেও হয়।
আইজাক রবিনোভিচ

1
সাবধান হন। --কেবলমাত্র নিম্নলিখিত যুক্তিগুলি প্যারামিটার হিসাবে ব্যাখ্যা করা বন্ধ করে - এটি শেলটির সম্প্রসারণ (উদাহরণস্বরূপ *) সঞ্চালন থেকে বাধা দেয় না , যা এখানে ঘটছে। (আমি জানি আপনি এটি অন্যান্য পরিস্থিতিতে বিকল্প হিসাবে পরামর্শ দিয়েছেন, তবে একটি সতর্কতা ভাল হবে।)
বব
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.