লিনাক্স কমান্ড লাইনে কোনও ডিরেক্টরি রয়েছে কিনা তা কীভাবে পরীক্ষা করবেন?


28

লিনাক্স কমান্ড লাইনে কোনও ডিরেক্টরি রয়েছে কিনা তা কীভাবে পরীক্ষা করবেন?

সমাধান: [ -d ¨a¨ ]&&echo ¨exists¨||echo ¨not exists¨


4
সুতরাং এটি সমাধান হিসাবে চিহ্নিত করুন।
— ব্লুরাজা - ড্যানি পিফ্লুঘুফুট

উত্তর:


40
$ if test -d /the/dir; then echo "exist"; fi 

আমার এটি কমান্ড লাইনে দরকার, কোনও স্ক্রিপ্টে নয়।

5
তা হ'ল কমান্ড লাইন। আপনি এটি সরাসরি ব্যাশে টাইপ করতে পারেন, বা আপনি এটি আবার চালু করতে পারেন test -d /the/dir: test -d /the/dir && echo "exist" || echo "does not exist"তবে সেগুলি সত্যই একই।
— ডেভিড রদ্রিগেজ - 21:38

সবার শাঁস নয় bash!
— পুনরায় পোস্টার

@ রিনিয়ারপোস্ট তাহলে আপনার জন্য শুভকামনা ...
— স্টেফানো

@ স্টেফানো বোরিনী: আমি এখনও ব্যবহার করি tcshকারণ আমি আমার লেখার পক্ষে খুব অলস .tcshrc। তবে আরও উল্লেখযোগ্য বিষয়: এটি ওপির সমস্যাটি ব্যাখ্যা করতে পারে।
— পুনরায় পোস্টার

11

আপনার শেলটি BASH হিসাবে ধরে নেওয়া:

if [ -d /the/dir ]; then echo 'Exists'; else echo 'Not found'; fi

অপ্রত্যাশিত টোকেনের কাছে সিনট্যাক্স ত্রুটি `তারপরে '

তারপরে আপনার শেলটি কী তা নির্ধারণ করুন। সম্ভবত cshবা tcsh?
— পুনরায় পোস্টার

8
[ -d /home/bla/ ] && echo "exits"

ডিরেক্টরিটি বিদ্যমান না থাকলেও একটি পাঠ্য প্রদর্শন করার জন্য কি আমার কাছে ELSE এর মতো কিছু থাকতে পারে?

কার্যসংক্রান্ত:[ -d /home/bla/ ] && echo "exist" ; [ ! -d /home/bla/ ] && echo "doesnt exist"
— learningloop

7

ক্যানোনিকাল উপায়টি হল পরীক্ষার (1) ইউটিলিটি ব্যবহার করা:

test -d path

যেখানে "পাথ" হ'ল প্রশ্নাবলীর ডিরেক্টরিটির পথের নাম।


কমান্ডটি নিজের দ্বারা করা হচ্ছে না বলে মনে হয় তবে এটি যখন ক এর সাথে যোগ হয় echo "Directory Exists"।
— এজাজ 21

2

[ -d "YOUR_DIR" ] && echo "is a dir"

উদাহরণ:

[ -d / ] && echo "root dir"

ইচ্ছা আউটপুট: root dir।


[-ড: কমান্ডটি পাওয়া যায় নি এটি আমি পেয়েছি

"[" এবং "-" এর মধ্যে একটি স্থান থাকা দরকার। এটি বোর্ন এবং বাশ শেলের উপর কাজ করা উচিত।

0

কোনও শেল স্ক্রিপ্টে ডিরেক্টরি রয়েছে কিনা তা পরীক্ষা করতে আপনি নিম্নলিখিতটি ব্যবহার করতে পারেন:

dir=$1

if [ -d "$dir" ]; then

 #means that $dir exists.

fi

বিপরীতে পরীক্ষা করতে, !আগে যোগ করুন-d ->[ ! -d ....]


সুপার ব্যবহারকারীকে স্বাগতম! এটি অন্য উত্তরটির সদৃশ এবং কোনও নতুন সামগ্রী যুক্ত করে না। অবদানের জন্য আপনার কাছে নতুন কিছু না থাকলে দয়া করে কোনও উত্তর পোস্ট করবেন না।
— ডেভিডপস্টিল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.