নীচের স্ক্রিপ্টটি কেন নিজেকে মুছে ফেলবে?


84

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

#!/bin/rm


@ ডিজিটালট্রামা হিহ, এটি দেখে আমার প্রথম চিন্তা হয়েছিল।
বিড়াল

এটি সম্পর্কে নয় rm, এটি সম্পর্কে #!। কোনও #!কাজের সাথে কোনও এক্সিকিউটেবল স্ক্রিপ্ট কী করে তা প্রশ্নটি পুনরায় উত্তর দেওয়া যায় ।
njzk2

1
আপনি কীভাবে এটিকে হোঁচট খাবেন?
ব্যবহারকারী 1717828

1
এটি অবশ্যই একটি মহাকাব্য প্রশ্ন। আমি দুঃখিত যে আমি এটি একবারে upvote করতে পারেন।
ড্যানিলা কিভার

উত্তর:


112

কার্নেলটি #!স্ক্রিপ্টটি চালাতে ব্যবহার করে স্ক্রিপ্টটির নামে প্রবেশ করে; সুতরাং এটি চলমান শেষ

/bin/rm scriptname

যা স্ক্রিপ্ট মুছে দেয়। ( স্টাফেন চেজেলাস যেমন উল্লেখ করেছেন , scriptnameস্ক্রিপ্টটি সন্ধানের জন্য এখানে যথেষ্ট - আপনি যদি কোনও আপেক্ষিক বা নিখুঁত পথ নির্দিষ্ট করে থাকেন তবে সেই হিসাবে প্রেরণ করা হয়েছে, অন্যথায় যা কিছু পথ খুঁজে পাওয়া গেছে PATHতা পূর্ববর্তী, সম্ভবত আপনার শৈলীর স্ট্রিং সহ যদি PATHথাকে এবং স্ক্রিপ্টটি বর্তমান ডিরেক্টরিতে রয়েছে You আপনি প্রতিধ্বনি স্ক্রিপ্টের সাথে চারপাশে খেলতে পারেন #!/bin/echo- এটি কীভাবে কাজ করে তা দেখতে))

হবস যেমন উল্লেখ করেছে, এর অর্থ আপনার লিপিটি আসলে একটি rmস্ক্রিপ্ট, কোনও স্ক্রিপ্ট নয় bash- পরবর্তীটি দিয়ে শুরু হবে #!/bin/bash

এটি কীভাবে লিনাক্সে কাজ করে তার বিশদগুলির জন্য প্রোগ্রামগুলি কীভাবে চালিত হয় দেখুন ; এই নিবন্ধে মন্তব্য অন্যান্য প্ল্যাটফর্মের জন্য বিশদ দেয়। #!তাকে শেবাং বলা হয়, আপনি সেই শব্দটি অনুসন্ধান করে প্রচুর তথ্য পাবেন ( পরামর্শের জন্য অ্যারনকে ধন্যবাদ )। হিসাবে jlp নির্দিষ্ট, এছাড়াও আপনি এটি হিসাবে "পাউন্ড ঠুং" বা "হ্যাশ ঠুং" (উল্লেখ পাবেন #যে দেশগুলো ব্যবহার না - সাধারণভাবে "পাউন্ড" নামে পরিচিত £- বা "হ্যাশ", এবং !"ঠুং" হিসেবে )। উইকিপিডিয়ায় আরও তথ্য রয়েছে।


9
"#!" এর অন্যান্য নাম আপনি শুনতে পাচ্ছেন যে "পাউন্ড ব্যাং" এবং "হ্যাশ ব্যাং"। বিশদ জানতে en.wikedia.org/wiki/Shebang_( ইউনিক্স) দেখুন ।
jlp

@jlp পাউন্ড bang? "বুক ফর ব্যাং" এর মতো কি? হি ...
বিড়াল

আমাকে ওল মনে করিয়ে দেয় ' CrunchBang
Xen2050

1
প্রযুক্তিগতভাবে, যুক্তিটি স্ক্রিপ্টের পথrm হবে , এটি প্রক্রিয়া দ্বারা করা () সিস্টেম কল করার প্রথম যুক্তি। সাধারণত, আপনি যেমন স্ক্রিপ্ট দৌড়ে , যে হবে এবং যদি আপনি এটি হিসাবে প্রার্থনা , যে হবে যেখানে মধ্যে এন্ট্রি যেখানে যে স্ক্রিপ্ট পাওয়া যায়নি। সাধারণত, এটি কেবলমাত্র যদি আপনার কাছে খালি স্ট্রিং থাকে এবং আপনি স্ক্রিপ্টটি অনুরোধ করেছিলেন এবং বর্তমান ডিরেক্টরিতে রয়েছে। ./scriptname./scriptnamescriptname/path/to/scriptname/path/to$PATHscriptname$PATHscriptnamescriptname
স্টাফেন চেজেলাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.