শর্তাধীন বিবৃতিতে -x এর অর্থ কী?


20

-xএখানে অর্থ কি :

if [ -x /etc/rc.local ] then

আমি কীভাবে এই ম্যানুয়াল পৃষ্ঠাটি সন্ধান করতে পারি if?


4
tldp.org/LDP/Bash-Beginners- Guide/html/sect_07_01.html এই পৃষ্ঠায় বাশের মূল বিষয়গুলি ব্যাখ্যা করা হচ্ছে যদি।
ক্রিস্টোফ ডি ট্রয়ের

2
যদি ফাইল বিদ্যমান থাকে এবং কার্যকর হয় তবে এটি সত্য হিসাবে মূল্যায়ন করে।
जॉবিন

আপনি চেষ্টা করেছেন help if?
অবিনাশ রাজ

উত্তর:


26

man bashপৃষ্ঠাগুলি থেকে (বিশেষত শর্তাধীন শর্তাবলী বিভাগ):

   -a file
          True if file exists.
   -b file
          True if file exists and is a block special file.
   -c file
          True if file exists and is a character special file.
   -d file
          True if file exists and is a directory.
   -e file
          True if file exists.
   -f file
          True if file exists and is a regular file.
   -g file
          True if file exists and is set-group-id.
   -h file
          True if file exists and is a symbolic link.
   -k file
          True if file exists and its ``sticky'' bit is set.
   -p file
          True if file exists and is a named pipe (FIFO).
   -r file
          True if file exists and is readable.
   -s file
          True if file exists and has a size greater than zero.
   -t fd  True if file descriptor fd is open and refers to a terminal.
   -u file
          True if file exists and its set-user-id bit is set.
   -w file
          True if file exists and is writable.
   -x file
          True if file exists and is executable.

   [...]

3
এটি লক্ষ করা উচিত, কোনও ডিরেক্টরিতে এক্সিকিউটেবল মানে এটি ট্র্যাভার করা যায়।
সমৃদ্ধ remer

2
@ স্টেভেনপেনি প্রশ্নের দ্বিতীয় অংশটি ছিল "আমি কীভাবে এই ম্যানুয়াল পৃষ্ঠাটি জানতে পারি?"
স্পারহাক

1
@ ড্র্রুবেন যখন আপনি testবাশ শুরু করেন, আপনি বাইনারিটি চালাচ্ছেন না test। আপনি পরিবর্তে, testবাশের বিল্টিনকে অনুরোধ করছেন, যেখানে help testঅন্যান্য জায়গাগুলির মধ্যে ডকুমেন্টেশন রয়েছে। man testযে কারণে কিছু ক্ষেত্রে বিভ্রান্তিকর হতে পারে।
ক্রিস ডাউন

11

ifনিজেই একটি শেল কীওয়ার্ড, সুতরাং আপনি এটির সাথে তথ্যটি সন্ধান করতে পারেন help ififপরবর্তী কমান্ডটি সত্য (0) বা মিথ্যা (শূন্য নয়) ফিরে আসে কিনা তার উপর ভিত্তি করে নিজেই কেবল শাখাগুলি। আপনি আসলে যা চান তা হ'ল, man [বা man testযেখানে [একটি উপনাম test। এই বিবৃতিটি আসলে সম্পাদন করছে test -x /etc/rc.local, যা ফাইলটি উপস্থিত রয়েছে এবং তা কার্যকর করা যায় (বা অনুসন্ধানের অনুমতি রয়েছে) তা পরীক্ষা করে।


1
man [খুব কাজ করে।
স্পারহাক

1
এটি কেবল এটি বিদ্যমান কিনা তা পরীক্ষা করে না, এটি ফাইলটি কার্যকর করার যোগ্য কিনা তাও পরীক্ষা করে।
টম ফেনেক

@ টমফেনেক, আহ, ঠিক ...
PSusi

@psusi ifএটি শেল কীওয়ার্ডের অন্তর্নির্মিত শেল নয় type iffor এটি পরীক্ষা করার জন্য এই কমান্ডটি চালান ।
অবিনাশ রাজ

3

থেকে info test:

`-x FILE'
    True if FILE exists and execute permission is granted (or search permission, if it is a directory).

কোনও ডিরেক্টরিতে এটি সিডি করতে সক্ষম হওয়ার জন্য নির্ধারিত অনুমতি প্রয়োজন (এটি কোনও ডিরেক্টরিকে আপনার বর্তমান ওয়ার্কিং ডিরেক্টরি তৈরি করতে)।

এর মধ্যে ফাইলগুলির "ইনোড" তথ্য অ্যাক্সেস করতে একটি ডিরেক্টরিতে এক্সিকিউট প্রয়োজন। এর মধ্যে থাকা ফাইলগুলির ইনোডগুলি পড়তে আপনাকে একটি ডিরেক্টরি অনুসন্ধান করতে হবে। এই কারণে কোনও ডিরেক্টরিতে মৃত্যুদন্ড কার্যকর করার অনুমতিটিকে তার পরিবর্তে প্রায়শই অনুসন্ধানের অনুমতি বলা হয়।

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