আমি কীভাবে ">" নামে একটি ফাইল মুছতে পারি?


22

আমি একটি পাইথন স্ক্রিপ্ট চালাচ্ছিলাম যা ত্রুটিযুক্ত ছিল এবং sudoএকটি ফাইল তৈরি করত >

আমি কীভাবে এই ফাইল থেকে মুক্তি পেতে পারি?

অবশ্যই আমি চেষ্টা করার সময় আমি sudo rm >ত্রুটিটি bash: syntax error near unexpected token 'newline'পাই কারণ এটি মনে করে আমি এর আউটপুট পুনর্নির্দেশের চেষ্টা করছি rm

এর অনুমতিগুলি হ'ল -rw-r--r--


10
উত্তরগুলি অবশ্যই সঠিক, তবে সাধারণভাবে আপনি এটি বিবেচনা করতে পারেন: ফাইলটি প্রথম স্থানে কীভাবে তৈরি করা হয়েছিল? (অবশ্যই, sudo touch >একটি শেলের মধ্যেও একই ত্রুটি ঘটবে)) আপনি বলেছিলেন এটি একটি পাইথন স্ক্রিপ্টের সাথে রয়েছে, সম্ভবত ">"কোনও osফাংশনে যাওয়ার মাধ্যমে তৈরি করা হয়েছিল । সুতরাং sudo python <<< 'import os; os.remove(">")'ঠিক কাজ করা উচিত।
wchargin

4
এটি আমাকে উইন্ডোজের একটি বাগের কথা মনে করিয়ে দিয়েছে যেখানে আপনি আক্ষরিকভাবে একটি নির্দিষ্ট নাম দিয়ে কোনও ফাইল মুছতে পারেন না (তবে এটি তৈরি করতে কোনও সমস্যা হয়নি))
পাইরুলেজ

পিয়ারুলেজ ওহ, কোনটি?
অস্টিন বুর্ক

8
হাস্যকরভাবে, উত্তরটি আপনি নিজেরাই লিখেছেন শিরোনামে।
রাফেল

উত্তর:


54

এর যে কোনওটিরই কাজ করা উচিত:

sudo rm \>
sudo rm '>'
sudo rm ">"
sudo find . -name '>' -delete
sudo find . -name '>' -exec rm {} +

নোট করুন যে শেষ দুটি কমান্ড, যাঁরা ব্যবহার করছেন তারা বর্তমান ফোল্ডারে এবং এর সমস্ত সাবফোল্ডারগুলিতে নামযুক্ত সমস্ত ফাইল বা ডিরেক্টরি findখুঁজে পাবেন । এটি এড়াতে, জিএনইউ অনুসন্ধানটি ব্যবহার করুন:>

sudo find . -maxdepth 1 -name '>' -delete
sudo find . -maxdepth 1 -name '>' -exec rm {} +

2
এটি সম্ভবত উল্লেখ করার findমতো rmযে এটির মতো নয় কারণ এটি পুনরাবৃত্ত এবং এটি আপনার বর্তমান ডিরেক্টরি গাছের নীচে থাকা প্রতিটি ফাইলকে rmযতই গভীর বিবেচনা না করে মুছে ফেলবে ।
jw013

6
@ রহুল প্রথম তিনটি ( rmরূপগুলি) সমস্ত একই রকম। শেল থেকে ফাইলটির নামটি রক্ষা করার এটি কেবল তিনটি ভিন্ন উপায়। একে অপরের চেয়ে বেশি পছন্দ করার কোনও কারণ নেই।
ডারোবার্ট

7
আপনি পরামর্শ দিচ্ছেন কেন find(1)? এখানে কেবল সমস্যাটি হ'ল একটি শেল মেটাচার্যাক্টর উদ্ধৃত করা দরকার। একটি মিলিয়ন এবং এক বিভিন্ন প্রোগ্রাম রয়েছে যা একটি ফাইল সরিয়ে ফেলতে পারে, তবে এর বাইরে অন্য যে কোনও কিছু ব্যবহার rm(1)করা কেবল উত্তরটি অবলম্বন করে।
ক্যামে

2
পুনরাবৃত্তি এড়াতে আপনার জিএনইউ অনুসন্ধানের দরকার নেই। sudo find . ! -name . -prune -name '>' -exec rm {} +
এইচডিভি

2
আমি @ ক্যামের সাথে একমত, findজিজ্ঞাসা করা প্রশ্নের উত্তর দেওয়ার জন্য কিছুই যোগ করি না।
পল ড্রাগার

18

এটিকে অপসারণ করতে আপনি পাইথন ব্যবহার করতে পারেন:

python -c 'import os;os.remove(">")'

পসিক্স সহ find:

find . ! -name . -prune -type f -name '>' -exec rm -f {} +

3
কেন বিরক্ত হও? শেলটি >আউটপুট পুনঃনির্দেশ হিসাবে ব্যাখ্যা এড়াতে প্রচুর উপায় সরবরাহ করে ।
অ্যালেক্সিস

3
@ এলেক্সিস ইমো এই সাধারণ কাজগুলি যতটা সম্ভব সম্পন্ন করার বিভিন্ন উপায় জানা ভাল। যদি ওপ এর আর একটি সমস্যা থাকে তবে খাঁটি দিয়ে খাঁটি সমাধান করা আরও কঠিন, তাদের সাথে চেষ্টা করার জন্য তাদের টুলবক্সে আরও একটি সরঞ্জাম থাকবে
আন্ডারগ্রাউন্ডোমোরিয়েল

1

শুরুতে আমি যা শেষ করেছিলাম তা কাজ করে:

sudo sh -c "rm \>"

এটি অবশ্যই সহজরূপে একটি বৈকল্পিক sudo rm \>


0

আমি এটি একটি মন্তব্য হিসাবে চেষ্টা করেছিলাম কিন্তু এটি সমস্ত এক লাইনে প্রকাশিত হয়েছিল

[Harry@localhost]~% touch ">"
[Harry@localhost]~% cat > ">"
line 1
line 2
[Harry@localhost]~% cat ">"
line 1
line 2
[Harry@localhost]~% ls -l ">"
-rw-r--r-- 1 Harry Harry 14 Jun  5 12:04 >
[Harry@localhost]~% rm ">"
[Harry@localhost]~% ls -l ">"
ls: cannot access >: No such file or directory
[Harry@localhost]~% 

এটি ইতিমধ্যে টেরডনের উত্তরে রয়েছে, যদিও ...
জন WH WH স্মিথ

হ্যাঁ, এটি আংশিকভাবে টেন্ডারের উত্তরে দেওয়া হয়েছে, আমি সম্মত, আমি কেবল ভেবেছিলাম যে এই ক্রমটি সহজ এবং এটিকে স্পষ্ট করে তুলেছি। আপনি দেখতে পাবেন যে আমি এটিকে উত্তরের পরিবর্তে একটি মন্তব্য হিসাবে অন্তর্ভুক্ত করার চেষ্টা করেছি, তবে কীভাবে এগুলি সব এক লাইনে প্রকাশ্যে এড়ানো উচিত তা আমি জানি না। এটি ফাইলটি তৈরি করতে পাইথনের দরকার নেই এটিও দেখায়, অন্য মন্তব্যে আরও একটি বিষয় প্রস্তাবিত suggested
হ্যারি ওয়েস্টন

0

চরিত্রটি উদ্ধৃত করুন যাতে এটি শেল দ্বারা পুনঃনির্দেশ হিসাবে ব্যাখ্যা করা যায় না:

sudo rm '>'

তবে আপনার কাছে যদি অদ্ভুত অক্ষরযুক্ত অন্যান্য ফাইল থাকে তবে নিরাপদ পদ্ধতিটি হ'ল একটি জিইউআই ফাইল এক্সপ্লোরার খুলতে nautilusহবে এবং এটি সেখানে মুছে ফেলা উচিত।

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