সুরক্ষিত ফাইল অপসারণ করার সময় কীভাবে "y" প্রদানের প্রয়োজনটি এড়াতে হবে


52

আমি "আরএম: রাইট-সুরক্ষিত নিয়মিত ফাইল সরান [এক্স]?" এর প্রতিক্রিয়া হিসাবে ব্যবহার করার একটি সমাধান খুঁজছি?

আমি বাশার্কে বেশ কয়েকবার গাড়ীর রিটার্ন অনুসরণ করে একটি চরিত্র জারি করার কথা ভাবছিলাম। আমরা যে কিভাবে করব?


আপনি একটি ফাংশন সংজ্ঞায়িত করতে পারেন। এই thrad আপনি সাহায্য করতে পারেন: stackoverflow.com/questions/756756/...
আল্পার্ট

আপনি কেন এটা করতে চান? কোনও ক্ষেত্রে গাড়িবহর রিটার্ন (নতুন লাইনের বিপরীতে) মুদ্রণ করা এবং এটি।
l0b0

@ l0b0 প্রশ্নটি আরও নির্দিষ্ট হতে সম্পাদিত হয়েছে
ইয়ানকোভিসি

আপনি .bashrc এ ফাইলগুলি সরাতে চান কেন? মূল কাজটি এখনও পরিষ্কার নয়।
l0b0

3
@ চেড্রোমণি এসও / এসই তে খুব সাধারণ বিষয়টি বোঝার চেষ্টা করার জন্য একটি সর্বোত্তম সমাধান প্রদানের জন্য অন্যান্য সমস্যাগুলির জন্য প্রযোজ্য যা সাধারণ সমস্যাটি বোঝার চেষ্টা করে।
l0b0

উত্তর:


75

আপডেট হওয়া প্রশ্নের ভিত্তিতে সম্পাদনা করুন:

ফাইলগুলি অপসারণ সম্পর্কে জিজ্ঞাসা করা এড়াতে, -f("বল") বিকল্পটি যুক্ত করুন:

rm -f /path/to/file

এটির একটি পার্শ্ব প্রতিক্রিয়া রয়েছে যা সম্পর্কে আপনার সচেতন হওয়া উচিত: প্রদত্ত কোনও পথ যদি বিদ্যমান না থাকে তবে এটি এটি প্রতিবেদন করবে না এবং এটি সফলভাবে ফিরে আসবে:

$ rm -f /nonexistent/path
$ echo $?
0

আসল উত্তর:

এখানে একটি সহজ সমাধান:

yes "$string" | head -n $number | tr $'\n' $'\r'

yesনিউলাইন দ্বারা পৃথক করে আপনি যে কোনও স্ট্রিং অসীমভাবে দিয়েছেন তা পুনরাবৃত্তি করে। সময়ের headপরে এটি বন্ধ করে দেয় $numberএবং trক্যারিয়ারের রিটার্নে নতুন লাইনগুলি অনুবাদ করে। ক্যারেজ রিটার্নের কারণে আপনি কোনও আউটপুট দেখতে পাবেন না, তবে এটি এই আদেশে (ইন bash) এ দেওয়ার মাধ্যমে এটি চিত্রিত করা উচিত:

printf %q "$(yes "$string" | head -n $number | tr $'\n' $'\r')"

ব্যবহারকারীরা ছাড়াই bashফলাফলটি পাইপ করতে পারেন od, hexdumpবা xxdপ্রকৃত অক্ষরগুলি ফিরে এসেছে তা দেখতে।


7

অন্যান্য ইস্যু আমি সময়ে সময়ে মধ্যে চালানো করেছি যে হয় rmওরফে হয় rm -i/ etc / bashrc মধ্যে ভালো কিছু:

alias rm='rm -i'

যে ক্ষেত্রে আপনি হয় পারেন unalias rmবা আপনি এটি কৌতুক যে আমি বছর পূর্বে খুঁজে পাওয়া যায় নি ব্যবহার করতে পারেন, একটি কমান্ড যে বেনামে হয়েছে সামনে একটি ব্যাকস্ল্যাশ করা, উদাহরণস্বরূপ, ওরফে ঠিক যে এক সময় উপেক্ষা করা:

\rm somefile

আপনি নিক্সক্র্যাফ্টের একটি নিবন্ধের মাধ্যমে উপাধি সম্পর্কে আরও শিখতে পারেন ।


5

rmরক্ষিত ফাইলগুলিতে "ইন্টারেক্টিভলি" (ব্যবহারকারী ইনপুটটির জন্য প্রম্পট অপেক্ষা করা) জিজ্ঞাসা করা হার্ডকোডযুক্ত। rmজিজ্ঞাসা থেকে রোধ করার জন্য দুটি পদ্ধতি রয়েছে :

rm -rf somedir

এবং

rm -r --interactive=never somedir

( -rডায়ারের পরিবর্তে ফাইলগুলি মোছার সময় উভয়ই কাজ করে )

ব্যাখ্যা:

-frm"অস্তিত্বযুক্ত ফাইল এবং যুক্তি উপেক্ষা করুন, কখনও প্রম্পট করবেন না" তোলে ।

--interactive=neverএটি যা বলে তা করে: কখনই ইন্টারেক্টিভ হয় না। অন্য কথায়: প্রম্পট কখনও।

পার্থক্য -fএবং --interactive=neverএই অংশটি: "অস্তিত্বযুক্ত ফাইল এবং যুক্তি উপেক্ষা করুন"।

তুলনা করা:

$ rm -rf nonexistingname
$ echo $?
0

এবং

$ rm -r --interactive=never nonexistingname
rm: cannot remove 'nonexistingname': No such file or directory
$ echo $?
1

স্ক্রিপ্টগুলি লেখার ক্ষেত্রে পার্থক্যটি মূলত আকর্ষণীয় যেখানে আপনি কখনই rmইন্টারেক্টিভ হতে চান না তবে ত্রুটিগুলি পরিচালনা করতে চান।

সংক্ষিপ্তসার: কমান্ড লাইন ব্যবহার rm -rf। স্ক্রিপ্ট ব্যবহার rm -r --interactive=never


বর্ণিত প্রশ্নের উত্তরের জন্য ("সুরক্ষিত ফাইল সরানোর সময়" y "প্রদানের প্রয়োজনীয়তাটি কীভাবে এড়াতে হবে") দেখুন https://askubuntu.com/questions/338857/automatic-enter-input-in-command-line / 338860 # 338860


1

শুধু আপনার সমস্ত আদেশ হ্যাঁ!

yes | rm -r /path/
yes | <command>

যাইহোক আপনি সর্বদা ব্যবহার করতে বাধ্য করতে পারেন -f:

rm -r -f /path

-2

আমিও একই ইস্যুতে দৌড়েছি। উপরের উত্তরটি কেবল একটি ফাইলের জন্য তবে আপনি যদি হ্যাঁ প্রচুর উপেক্ষা করতে চান তবে।

তুমি ব্যবহার করতে পার

sudo rm -r /path/to/directory

সমস্ত লিখিত সুরক্ষিত নিয়মিত ফাইল মুছে ফেলতে


এটি ডাউনভোট করা হচ্ছে কারণ এটি পুরো ডিরেক্টরিটি সরিয়ে দেয়। সম্ভবত ওপি কেবল একই ফাইল সাবট্রির প্রতিটি ফাইল নয়, কেবল প্রশ্নযুক্ত ফাইলটি সরাতে চায়।
জেক

আরে .... তুমি ঠিক বলেছ।
গোপাল প্রসাদ

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