7 থেকে 127 রিটার্ন কোড?


উত্তর:


427

/bin/shপ্রদত্ত কমান্ডটি যখন আপনার PATHসিস্টেমের ভেরিয়েবলের মধ্যে না পাওয়া যায় এবং এটি কোনও অন্তর্নির্মিত শেল কমান্ড না হয় তখন 127 মানটি ফিরে আসে । অন্য কথায়, সিস্টেমটি আপনার কমান্ড বুঝতে পারে না, কারণ আপনি যে বাইনারিটি কল করার চেষ্টা করছেন তা কোথায় তা খুঁজে পাওয়া যায় না।


55
বাশ স্ক্রিপ্টের মোড "+ x" না থাকলেও বাস্তবে উপস্থিত থাকলে এটিও ঘটে indeed
ম্যাথিউক্রিমার

3
which [program]ওএস কোন বাইনারি ব্যবহার করছে তা দেখার জন্য আপনি চেষ্টা করতে পারেন। যদি এটি খালি উঠে আসে, পরবর্তী পদক্ষেপে এক্সিকিউশন বিট এবং PATH পরীক্ষা করা হচ্ছে।
চারটি

10
@ cr125rider, whichবিশেষভাবে সঠিক নয় - এটি এলিয়াস, শেল ফাংশন, প্যাথ লুক লুকিং মেমোজাইজেশন, বা শেল স্টেটের অভ্যন্তরীণ অন্যান্য কারণগুলির সম্পর্কে জানে না। ব্যবহার করা আরও ভাল type, একটি শেল বিল্টিন যা এই সমস্ত সম্পর্কে জানে।
চার্লস ডাফি

5
উইন্ডোজ লাইন ফিডযুক্ত একটি ফাইলের সাথে আমারও এটি ঘটেছিল। ইউনিক্স ফর্ম্যাটে লাইনটি শেষ করা সমস্যার সমাধান করে
মিটকিনস

4
@ ম্যাথহেক্রিমার: আসলে, আমি 126( Permission denied) 127পাই না, যখন আমি অ-এক্সিকিউটেবল ফাইল (সেগুলির বিষয়বস্তু নির্বিশেষে) আহ্বান করার চেষ্টা করি না ; একইভাবে, একটি ডিরেক্টরি চালানোর চেষ্টাও ফলাফল 126( is a directory)।
mklement0

58

সাধারণত এর অর্থ:

127 - আদেশ পাওয়া যায় নি

কিন্তু এটি অর্থ করতে পারেন যে কমান্ড পাওয়া যায় ,
কিন্তু একটি লাইব্রেরি যে হুকুমে প্রয়োজন বোধ করা হয় খুঁজে পাওয়া যায় নি


14

127 - command not found

উদাহরণস্বরূপ: at ক্যাট ত্রুটি বার্তাটি দেবে

ব্যাশ:

বিড়াল: আদেশ পাওয়া যায় নি

এখন আপনি ব্যবহার পরীক্ষা করুন echo $?


10

একটি শেল কনভেনশন হ'ল সফল এক্সিকিউটেবলের মান 0 দিয়ে প্রস্থান করা উচিত অন্য কোনও কিছুর অর্থ বাশ বা আপনি যে চালানো এক্সিকিউটেবলের জন্য চালিয়ে গেছেন তা কোনও ধরণের ব্যর্থতা হিসাবে ব্যাখ্যা করা যেতে পারে। এছাড়াও দেখুন IP পাইপস্ট্যাটাস এবং ব্যাশ ম্যান পৃষ্ঠার এক্সিট স্ট্যাটাস বিভাগ:

   For  the shell’s purposes, a command which exits with a zero exit status has succeeded.  An exit status
   of zero indicates success.  A non-zero exit status indicates failure.  When a command terminates  on  a
   fatal signal N, bash uses the value of 128+N as the exit status.
   If  a command is not found, the child process created to execute it returns a status of 127.  If a com-
   mand is found but is not executable, the return status is 126.

   If a command fails because of an error during expansion or redirection, the exit status is greater than
   zero.

   Shell  builtin  commands  return  a  status of 0 (true) if successful, and non-zero (false) if an error
   occurs while they execute.  All builtins return an exit status of 2 to indicate incorrect usage.

   Bash itself returns the exit status of the last command executed, unless  a  syntax  error  occurs,  in
   which case it exits with a non-zero value.  See also the exit builtin command below.

8

এর কোনও বিশেষ অর্থ নেই, প্রস্থান করার শেষ প্রক্রিয়াটি 127 এর প্রস্থান স্থিতি দিয়ে এটি করেছিল did

তবে, এটি বাশ দ্বারাও ব্যবহৃত হয় (ধরে নিলেন আপনি বাশকে শাঁস হিসাবে ব্যবহার করছেন) ধরে নিতে আপনি যে কমান্ডটি কার্যকর করার চেষ্টা করেছিলেন তা কার্যকর করা যায় নি (অর্থাত এটি পাওয়া যায়নি)। এটি দুর্ভাগ্যক্রমে যদিও অবিলম্বে ছাড়ের যোগ্য নয়, যদি প্রক্রিয়াটি 127 স্থিতি দিয়ে উপস্থিত থাকে বা এটি খুঁজে না পাওয়া যায়।

সম্পাদনা:
কনসোলে আউটপুট ব্যতীত অবিলম্বে ছাড়যোগ্য নয়, তবে এটি স্ট্যাক ওভারফ্লো, সুতরাং আমি ধরে নিই যে আপনি এটি কোনও স্ক্রিপ্টে করছেন।


2

এই ত্রুটিটিও মাঝে মাঝে প্রতারণা করে। এটি বলে যে ফাইলগুলি প্রকৃতপক্ষে উপস্থিত থাকলেও ফাইল খুঁজে পাওয়া যায় না। এটি আপনার ব্যবহারকারীর সম্পাদকের কারণে হতে পারে এমন ফাইলগুলিতে অবৈধ অপঠনযোগ্য বিশেষ অক্ষরগুলির কারণ হতে পারে। এই লিঙ্কটি আপনাকে এ জাতীয় ক্ষেত্রে সহায়তা করতে পারে।

-বাশ: ./my_script: / bin / bash ^ M: খারাপ দোভাষী: এরকম কোনও ফাইল বা ডিরেক্টরি নেই

এটি এই সমস্যাটি কিনা তা জানার সর্বোত্তম উপায় হ'ল সম্পূর্ণ ফাইলটিতে একটি প্রতিধ্বনি বিবরণ রাখা এবং একই ত্রুটি নিক্ষেপ করা হয়েছে কিনা তা যাচাই করা।


1

আপনি যদি কোনও স্ক্রিপ্টিং ভাষা ব্যবহার করে কোনও প্রোগ্রাম চালানোর চেষ্টা করছেন, আপনার সম্পাদনার জন্য স্ক্রিপ্টিং ভাষার পুরো পথ এবং ফাইল অন্তর্ভুক্ত করতে হতে পারে। উদাহরণ স্বরূপ:

exec('/usr/local/bin/node /usr/local/lib/node_modules/uglifycss/uglifycss in.css > out.css');

ধন্যবাদ, এটি আমার পক্ষে কাজ করেছে। সুতরাং আমি কোন জিএস করেছি এবং তারপরে আমার স্ক্রিপ্টে আউটপুট পাথটি ব্যবহার করেছি। ওয়ার্কড ..
হুয়ান

0

আইবিএম মেইনফ্রেম জেসিএলের যদি ইউনিক্স স্ক্রিপ্টের নাম শেষে ডাকা শেষে কিছু অতিরিক্ত অক্ষর বা সংখ্যা থাকে তবে এটি ত্রুটি ফেলে দিতে পারে।

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