অ্যান্ড্রয়েড

বাশে কোনও ফাইল বা ডিরেক্টরি বিদ্যমান কিনা তা পরীক্ষা করে দেখুন to

Hyundai Kona mı Suzuki Vitara mı?

Hyundai Kona mı Suzuki Vitara mı?

সুচিপত্র:

Anonim

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

বাশ-এ, আপনি কোনও ফাইল বিদ্যমান কিনা তা পরীক্ষা করতে এবং ফাইলের ধরণ নির্ধারণ করতে পরীক্ষা কমান্ডটি ব্যবহার করতে পারেন।

পরীক্ষা কমান্ড নিম্নলিখিত সিনট্যাক্স ফর্মগুলির একটি গ্রহণ করে:

test EXPRESSION]

ফাইল অস্তিত্ব আছে কিনা তা পরীক্ষা করুন

কোনও ফাইল উপস্থিত রয়েছে কিনা তা যাচাই করার সময়, সর্বাধিক ব্যবহৃত ফাইল ফাইল অপারেটর হলেন -e এবং -f । প্রথমটি ফাইলটি নির্বিশেষে কোনও ফাইল উপস্থিত রয়েছে কিনা তা পরীক্ষা করে দেখবে, যখন দ্বিতীয় ফাইলটি নিয়মিত ফাইল (ডিরেক্টরি বা ডিভাইস নয়) কেবল তখনই প্রত্যাবর্তিত হয়।

ফাইলের উপস্থিতি আছে কি নেই তা পরীক্ষা করার সময় সর্বাধিক পঠনযোগ্য বিকল্পটি যদি স্টেটমেন্টের সাথে টেস্ট কমান্ড ব্যবহার করে। নীচের যে কোনও স্নিপেটগুলি /etc/resolv.conf ফাইল বিদ্যমান কিনা তা যাচাই করবে:

FILE=/etc/resolv.conf if test -f "$FILE"; then echo "$FILE exist" fi

FILE=/etc/resolv.conf if; then echo "$FILE exist" fi

FILE=/etc/resolv.conf if]; then echo "$FILE exist" fi

আপনি যদি ফাইলটি বিদ্যমান থাকে বা না করে কেবল যদি / তারপরে এটি নির্মাণ করে থাকেন তবে তার উপর ভিত্তি করে যদি আপনি কোনও ভিন্ন ক্রিয়া সম্পাদন করতে চান:

FILE=/etc/resolv.conf if; then echo "$FILE exist" else echo "$FILE does not exist" fi তাদের নামের সাথে শ্বেত স্পেসযুক্ত ফাইলগুলির সাথে ডিল করার সময় সমস্যাগুলি এড়াতে সর্বদা ডাবল কোট ব্যবহার করুন।

আপনি যদি বিবৃতি না দিয়ে পরীক্ষা কমান্ডও ব্যবহার করতে পারেন। পরীক্ষার কমান্ডের প্রস্থান স্থিতিটি সত্য হলেই && অপারেটরের পরে কমান্ড কার্যকর করা হবে, test -f /etc/resolv.conf && echo "$FILE exist"

&& echo "$FILE exist"

] && echo "$FILE exist"

&& { echo "$FILE exist"; cp "$FILE" /tmp/; }

&& বিপরীতে, || পরে বিবৃতি অপারেটর কেবল তখনই কার্যকর করা হবে যখন পরীক্ষা কমান্ডের প্রস্থান স্থিতি false

&& echo "$FILE exist" || echo "$FILE does not exist"

ডিরেক্টরি অস্তিত্ব আছে কিনা তা পরীক্ষা করুন

অপারেটর -d আপনাকে একটি ফাইল ডিরেক্টরি কিনা তা পরীক্ষা করার অনুমতি দেয়।

উদাহরণস্বরূপ আপনি /etc/docker ডিরেক্টরিটি ব্যবহার করবেন কিনা তা পরীক্ষা করতে:

FILE=/etc/docker if; then echo "$FILE is a directory" fi

&& echo "$FILE is a directory"

আপনি ডাবল , 'linuxize_com-medrectangle-4', 'ezslot_7', 160, '0', '0'])); ব্যবহার করতে পারেন , 'linuxize_com-medrectangle-4', 'ezslot_7', 160, '0', '0']));

ফাইলটি বিদ্যমান নেই কিনা তা পরীক্ষা করুন

অন্যান্য অনেক ভাষার মতো, পরীক্ষার এক্সপ্রেশনটি ব্যবহার করে এটিকে অবহেলা করা যেতে পারে ! (বিস্ময়কর চিহ্ন) লজিকাল অপারেটর নয়:

FILE=/etc/docker if; then echo "$FILE does not exist" fi

উপরের মতই:

&& echo "$FILE does not exist"

একাধিক ফাইল বিদ্যমান কিনা তা পরীক্ষা করে দেখুন Check

জটিল নেস্টেড ব্যবহার করার পরিবর্তে / অন্য কোন নির্মাণ আপনি যদি -a (বা && সাথে ; then echo "$FILE is a directory" fi ব্যবহার করতে পারেন ; then echo "$FILE is a directory" fi

FILE=/etc/docker if; then echo "$FILE is a directory" fi

আইএফ স্টেটমেন্টটি ব্যবহার না করে সমতুল্য রূপগুলি:

&& echo "both files exist"

] && echo "both files exist"

ফাইল পরীক্ষা অপারেটররা

পরীক্ষা কমান্ডে নিম্নলিখিত ফাইল ফাইল অপারেটরগুলি অন্তর্ভুক্ত রয়েছে যা আপনাকে নির্দিষ্ট ধরণের ফাইলগুলির পরীক্ষার অনুমতি দেয়:

  • -b FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি একটি ব্লক বিশেষ ফাইল। -c FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি একটি বিশেষ অক্ষরের ফাইল। -d FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি ডিরেক্টরি হয়। -e FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং কোনও ফাইল হয় তবে তা টাইপ (নোড, ডিরেক্টরি, সকেট, ইত্যাদি) নির্বিশেষে। -f FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং নিয়মিত ফাইল হয় (ডিরেক্টরি বা ডিভাইস নয়)। -G FILE - সত্য যদি FILE -G উপস্থিত থাকে এবং ব্যবহারকারী একই কমান্ড চালাচ্ছে group -h FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি একটি প্রতীকী লিঙ্ক হয়। -g FILE - সত্য যদি ফাইলে উপস্থিত থাকে এবং সেট-গ্রুপ-আইডি (স্যাজিড) পতাকা সেট থাকে। -k FILE - সত্য যদি ফাইলে উপস্থিত থাকে এবং স্টিকি বিট পতাকা সেট থাকে। -L FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি একটি প্রতীকী লিঙ্ক হয়। -O FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং কমান্ডটি ব্যবহারকারী ব্যবহারকারীর মালিকানাধীন থাকে। -p FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি পাইপ হয়। -r FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং পাঠযোগ্য হয়। -S FILE - যদি ফাইলটি বিদ্যমান থাকে এবং সকেট হয় তবে এটি সত্য। -s FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং ননজারো আকার থাকে। -u FILE - সত্য যদি উপস্থিত থাকে এবং ব্যবহারকারী-আইডি (স্যুইড) পতাকাটি সেট করা থাকে। - আমরা FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং লিখিত হয়। -x FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং কার্যকর হয়।

উপসংহার

এই নির্দেশিকায়, আমরা আপনাকে বাশ ব্যবহার করে কোনও ফাইল বা ডিরেক্টরি উপস্থিত রয়েছে কিনা তা পরীক্ষা করে দেখিয়েছি।

বাশ টার্মিনাল