বাশ স্ক্রিপ্টে কোনও ভলিউম মাউন্ট করা হয়েছে কিনা তা যাচাই করার সর্বোত্তম উপায় কী?


103

বাশ স্ক্রিপ্টে কোনও ভলিউম মাউন্ট করা হয়েছে কিনা তা যাচাই করার সর্বোত্তম উপায় কী?

আমি আসলে যা চাই তা হ'ল একটি পদ্ধতি যা আমি এটির মতো ব্যবহার করতে পারি:

if <something is mounted at /mnt/foo> 
then
   <Do some stuff>
else
   <Do some different stuff>
fi

আমি নিজে এটি করার জন্য একটি স্ক্রিপ্ট লিখতে চলেছিলাম। আমার প্রথম চিন্তাটি হল / ইত্যাদি / এমটিএব থেকে তথ্য আনা হবে তবে আরও বাড়াবার উপায় আছে কিনা তা দেখতে আমি এখনও আমার বাশ বইয়ের সাহায্যে থাম্ব করিনি।
3dinfluence

@ থিডিনফ্লুয়েন্স - হ্যাঁ আমি এটি অনেক আগে থেকেই জানি, তবে /etc/mtab, /proc/mountsএর সাথে যুক্ত /proc/self/mounts(ফেডোরার 20 এ এটি
উইলফ

উত্তর:


113

ব্যবহার থেকে /etc/mtabবিরত থাকুন কারণ এটি অসঙ্গত হতে পারে।

পাইপিং এড়ান mountকারণ এটি এত জটিল হওয়ার দরকার নেই।

কেবল:

if grep -qs '/mnt/foo ' /proc/mounts; then
    echo "It's mounted."
else
    echo "It's not mounted."
fi

(এর পরে স্থানটি /mnt/fooম্যাচটি এড়ানোর জন্য উদাঃ /mnt/foo-bar))


7
উল্লেখ করার মতো নয়, মাউন্টপয়েন্টটি বন্ধ থাকলে মাউন্টে কল কল করতে পারে।
চাদ হুনাইকুট

8
লিনাক্সের জন্য ভাল, ফ্রিবিএসডি বা সোলারিসের জন্য নয়।
ক্রিস

4
এটা সত্য, খ্রিস্ট। যদিও প্রশ্নটি ট্যাগ করা হয়েছিল লিনাক্স।
ড্যান কারলি

3
আমার ধারণা এটি একটি দার্শনিক প্রশ্ন - যদি সম্ভব হয় তবে কি আমাদের জিনিসগুলি পোর্টেবল করার চেষ্টা করা উচিত বা আমরা কেবল ধরে নিতে পারি যে বিশ্বের সমস্ত চলমান উইন্ডো / লিনাক্স এবং সেই অনুযায়ী কাজ করা উচিত?
ক্রিস

18
আসলে, আপনার '/ mnt / foo' এর জন্য পরীক্ষা করা উচিত, অর্থাত্। একটি স্থান সহ বা আপনি যেমন নামের একটি ভলিউম মাউন্ট থাকলে আপনি একটি মিথ্যা ইতিবাচক পেতে পারেন। 'fooks'। আমি কেবল দুটি মাউন্ট পয়েন্ট, 'এলএমডি' এবং 'এলএমডি-হোম' দিয়ে এই সমস্যাটি পেয়েছি।
মারারার

58
if mountpoint -q /mnt/foo 
then
   echo "mounted"
else
   echo "not mounted"
fi

অথবা

mountpoint -q /mnt/foo && echo "mounted" || echo "not mounted"

4
কেবল তথ্যের জন্য: mountpointউবুন্টু / ডেবিয়ানের "ইনসক্রিপ্টস" প্যাকেজে উত্পন্ন।
ব্লুয়েড

1
আমার জন্য কাজ করেনি - :-(
উইলফ

এই কলটি, আমার ভ্যাগ্র্যান্ট ঝুলছে।
dhill

সমস্যাটি mountpointহ'ল এটি চেক করে, আসলে, যদি একটি মাউন্ট পয়েন্ট মাউন্ট করা থাকে তবে কোনও ডিভাইস মাউন্ট করা থাকলে তা নয়। কোনও ডিভাইস যদি -xবিকল্পটি দিয়ে পাস করা হয় তবে এটি আপনাকে বড় / গৌণ ডিভাইস নম্বরটি বলবে, তবে এটি মাউন্ট করা থাকলে নয়।
ভেজাত্রিপি

@ ব্লুয়েড ইন ডেবিয়ান বুস্টার এটি প্যাকেজটি সরবরাহ করেছেutil-linux
এলবৌলেঞ্জেরো

18

findmnt -rno SOURCE,TARGET "$1"অন্যান্য উত্তরের সমস্ত সমস্যা এড়ানো হয়। এটি পরিষ্কারভাবে কেবল একটি আদেশ দিয়ে কাজটি করে।


অন্যান্য পদ্ধতির এই ডাউনসাইডগুলি রয়েছে:

  • grep -qএবং grep -sএটি একটি অতিরিক্ত অপ্রয়োজনীয় পদক্ষেপ এবং সর্বত্র সমর্থিত নয়।
  • /proc/\* সর্বত্র সমর্থিত নয়।
  • mountinfo / proc / .. ভিত্তিক
  • cut -f3 -d' ' পথের নামগুলিতে ফাঁকা স্থান
  • মাউন্ট এর সাদা স্থান পার্সিং সমস্যাযুক্ত। ম্যান পেজটি এখন বলেছেন:

.. তালিকা মোড শুধুমাত্র পিছিয়ে সামঞ্জস্যের জন্য বজায় রাখা হয়।

আরও দৃust় এবং কাস্টমাইজযোগ্য আউটপুট জন্য সন্ধানকারী (8) ব্যবহার করুন , বিশেষত আপনার স্ক্রিপ্টগুলিতে।


বাশ ফাংশন:

#These functions return exit codes: 0 = found, 1 = not found

isMounted    () { findmnt -rno SOURCE,TARGET "$1" >/dev/null;} #path or device
isDevMounted () { findmnt -rno SOURCE        "$1" >/dev/null;} #device only
isPathMounted() { findmnt -rno        TARGET "$1" >/dev/null;} #path   only

#where: -r = --raw, -n = --noheadings, -o = --output

ব্যবহারের উদাহরণ:

if isPathMounted "/mnt/foo bar";      #Spaces in path names are ok.
   then echo "path is mounted"
   else echo "path is not mounted"
fi

if isDevMounted "/dev/sdb4"; 
   then echo "device is mounted"
   else echo "device is not mounted"
fi

#Universal:
if isMounted "/mnt/foo bar"; 
   then echo "device is mounted"
   else echo "device is not mounted"
fi

if isMounted "/dev/sdb4";
   then echo "device is mounted"
   else echo "device is not mounted"
fi

1
লিনাক্স নির্দিষ্ট জন্য যাইহোক এটি সত্যিই সেরা পদ্ধতির। আমি findmnt(8)কমান্ডটি দেখেছি কিন্তু আমি সত্যিই এটির সাথে খেলিনি। সত্যিকার অর্থে যদি আমি আমার স্ক্রিপ্টগুলির কিছু আপডেট করি যা লিনাক্স বাক্সে এই ধরণের জিনিস (বা নতুন তৈরি করে) তৈরি করে (বা যেখানে কমান্ড উপলব্ধ রয়েছে) আমি এটাই করব।
প্রাইফটান

1
নোট করুন যে এনএফএসের জন্য, findmntপ্যারামিটার সরবরাহ করতে হবে --source encfs, অন্যথায় এটি সর্বদা ডিরেক্টরিটিকে মাউন্ট হিসাবে বিবেচনা করবে কারণ এটি প্যারেন্ট মাউন্টে ফিরে আসে।
বুর্ক্ট

এই বেশী ভালো grepযেমন আমি যদি মাউন্ট করুন: সমাধান কোন মাউন্ট পথ অদ্ভুত হয়, তাহলে আপনি মিথ্যা positives পেতে পারেন কারণ /dev/mmcblk0p1উপর ~/mnt/dev/sda1আমি ভুল জিনিস যে could, /dev/sda1হুকুমে মাউন্ট করা mount | grep '/dev/sda1'। ব্যবহার করে আমি মিথ্যা ইতিবাচক পেতে পারি না findmnt। ভাল উত্তর!
কোডি পিয়ার্সাল

7

এর মতো স্ক্রিপ্ট কখনও পোর্টেবল হতে পারে না। ইউনিক্সের একটি নোংরা রহস্যটি হ'ল কেবল কার্নেলই জানে যে ফাইল সিস্টেমগুলি কোথায়, এবং / প্রোক (পোর্টেবল নয়) এর মতো জিনিসের সংক্ষিপ্তসার এটি আপনাকে কোনও সরাসরি উত্তর দেবে না।

উপ-ডিরেক্টরিটির মাউন্ট-পয়েন্ট কী এবং এটি কোন ফাইল সিস্টেমের মধ্যে রয়েছে তা আবিষ্কার করার জন্য আমি সাধারণত ডিএফ ব্যবহার করি।

উদাহরণস্বরূপ (অ্যাশ / এটিএন্ডটি টিএসএইচএস / বাশ / ইত্যাদির মতো পক্সিক্স শেল প্রয়োজন)

case $(df  $mount)
in
  $(df  /)) echo $mount is not mounted ;;
  *) echo $mount has a non-root filesystem mounted on it ;;
esac

কিন্ডা আপনাকে দরকারী তথ্য বলে।


1
প্রশ্নটি লিনাক্স ট্যাগ করা হয়েছে, সুতরাং এটি পোর্টেবল হতে হবে না
ররি

6

নিম্নলিখিতটি আমি আমার আরএসসিএন-এর ব্যাকআপ ক্রোন জবগুলিতে ব্যবহার করি। এটি / ব্যাকআপটি মাউন্ট করা হয়েছে কিনা তা যাচাই করে এবং এটি না পারলে এটি মাউন্ট করার চেষ্টা করে (এটি ব্যর্থ হতে পারে কারণ ড্রাইভটি হট-সোয়াপ বেতে রয়েছে এবং এমনকি সিস্টেমটিতে উপস্থিত নাও হতে পারে)

দ্রষ্টব্য: নিম্নলিখিতটি কেবল লিনাক্সে কাজ করে, কারণ এটি গ্রেপস / প্রোক / মাউন্টস - একটি আরও বহনযোগ্য সংস্করণ 'মাউন্ট | গ্রেপ / ব্যাকআপ ', যেমন ম্যাথিউয়ের উত্তরে ..

  যদি! গ্রেপ-কিউ / ব্যাকআপ / প্রোক / মাউন্টস; তারপর
    যদি! মাউন্ট / ব্যাকআপ; তারপর
      প্রতিধ্বনি "ব্যর্থ"
      প্রস্থান 1
    ফাই
  ফাই
  প্রতিধ্বনি "সফল হয়েছে।"
  # এখানে জিনিস না

2
একটি ভাল স্যানিটি পরীক্ষা করার বিকল্প হিসাবে উত্সাহিত।
ড্যান কারলি 21

সম্ভবত এই পদ্ধতিটি ম্যাথু ব্লচের উত্তর হিসাবে একই সমস্যার মধ্যে চলে।
mwfearnley

হ্যাঁ, "এলিপিক্যাল ভিউ" দ্বারা উল্লিখিত স্পেস-ইন-ফাইল নাম ইস্যু ব্যতীত (এটি কেবল একটি এক্সট্রাক্ট করা ক্ষেত্র নয়, পুরো লাইনটি গ্রেপ্তার করে)। সাব-স্ট্রিং ইস্যুটি কোনও বড় বিষয় নয় যদি না আপনি কোনওভাবে ভুলে যান যে যুক্তিগুলি উদ্ধৃত করা একটি জিনিস যা আপনি করতে পারেন। যেমন grep -q ' /backup ' /proc/mountsবা mount | grep -q ' /backup '। অথবা / dev / নাল পুনর্চালনা যদি আপনার, grep সমর্থন করে না -q(যা হল , grep এই দিন জন্য POSIX বৈশিষ্ট)।
কাস

2

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

আমি মনে করি না এটি নেটওয়ার্ক ড্রাইভ বা এর মতো জিনিসগুলির জন্য কাজ করে। আমি এটি ফ্ল্যাশ ড্রাইভের জন্য ব্যবহার করেছি।


2

ডিভাইস সংখ্যা তুলনা সম্পর্কে কীভাবে? আমি সর্বাধিক রহস্যময় উপায় চিন্তা করার চেষ্টা করছিলাম ..

#!/bin/bash
if [[ $(stat -c "%d" /mnt) -ne $(stat -c "%d" /mnt/foo) ]]; then
    echo "Somethin mounted there I reckon"
fi

তার সাথে আমার যুক্তিতে একটি ত্রুটি আছে ...

একটি ফাংশন হিসাবে:

#!/usr/bin/bash
function somethingMounted {
        mountpoint="$1"
        if ! device1=$(stat -c "%d" $mountpoint); then
                echo "Error on stat of mount point, maybe file doesn't exist?" 1>&2
                return 1
        fi
        if ! device2=$(stat -c "%d" $mountpoint/..); then
                echo "Error on stat one level up from mount point, maybe file doesn't exist?" 1>&2
                return 1
        fi

        if [[ $device1 -ne $device2 ]]; then
                #echo "Somethin mounted there I reckon"
                return 0
        else
                #echo "Nothin mounted it seems"
                return 1
        fi
}

if somethingMounted /tmp; then
        echo "Yup"
fi

প্রতিধ্বনির ত্রুটির বার্তা সম্ভবত অনর্থক, কারণ স্ট্যাটাস ত্রুটিটিও প্রদর্শন করবে।


আসলে, ফাইলটি আছে কিনা তা নিশ্চিত করার জন্য সম্ভবত প্রতিটি কলের জন্য প্রথমে স্ট্যাটের প্রস্থান স্থিতি পরীক্ষা করতে হবে ... আমি যে উপন্যাসটি ভেবেছিলাম তা নয় :-(
কাইল ব্র্যান্ড্ট

1

এর কোনওটিই ব্যবহারের ক্ষেত্রে সন্তুষ্ট হয় না যেখানে প্রদত্ত ডিরেক্টরিটি অন্য মাউন্ট পয়েন্টের মধ্যে একটি উপ ডিরেক্টরি হয়। উদাহরণস্বরূপ, আপনার কাছে / জিনিস থাকতে পারে যা হোস্ট করতে একটি এনএফএস মাউন্ট: / রিয়েল_থিং। / Proc / mounts / etc / mtab বা 'মাউন্ট' এ এই উদ্দেশ্যে গ্রেপ ব্যবহার করা কার্যকর হবে না, কারণ আপনি যে মাউন্ট পয়েন্টটির অস্তিত্ব নেই তা সন্ধান করবেন। উদাহরণস্বরূপ, / জিনিস / জিনিসটি কোনও মাউন্ট পয়েন্ট নয়, তবে / জিনিস হোস্টে মাউন্ট করা হয়: / রিয়েল_থিং। এখানে ভোট দেওয়া সেরা উত্তরটি আসলে "ডিরেক্টরি / ভলিউম মাউন্ট করা আছে কিনা তা নির্ধারণ করার সর্বোত্তম উপায়" নয়। আমি একটি ক্লিনার কৌশল হিসাবে 'df -P' (-P POSIX মানক মোড) ব্যবহার করার পক্ষে ভোট দেব:

dev=`df -P /thing/thingy | awk 'BEGIN {e=1} $NF ~ /^\/.+/ { e=0 ; print $1 ; exit } END { exit e }'` && {
    echo "Mounted via: $dev"
} || {
    echo "Not mounted"
}

এটি চালানো থেকে আউটপুট হবে:

Mounted via: host:/real_thing

আপনি যদি আসল মাউন্ট পয়েন্টটি জানতে চান তবে কোনও সমস্যা নেই:

mp=`df -P /thing/thingy | awk 'BEGIN {e=1} $NF ~ /^\/.+/ { e=0 ; print $NF ; exit } END { exit e }'` && {
    echo "Mounted on: $mp"
} || {
    echo "Not mounted"
}

এই কমান্ড থেকে আউটপুট হবে:

Mounted on: /thing

আপনি যদি কিছু স্বেচ্ছাসেবী ডিরেক্টরি বা ফাইল তালিকার মাধ্যমে ক্রোটের বাইরে ক্রুটের বাইরে মাউন্ট পয়েন্টগুলি আয়না করে এমন কিছু ক্রোট তৈরির চেষ্টা করছেন তবে এটি সবই কার্যকর।


1

এটি আনার জন্য দুঃখিত তবে আমি মনে করি এটি বেশ উপকারী:

if awk '{print $2}' /proc/mounts | grep -qs "^/backup$"; then
    echo "It's mounted."
else
    echo "It's not mounted."
fi

এটি / proc / মাউন্টগুলির ২ য় কলাম পায় (২ য় কলাম = মাউন্ট পয়েন্ট)।

তারপরে এটি আউটপুটকে গ্রেপ করে। ^ এবং Note নোট করুন, এটি ম্যাচিং / এমএনটি / ব্যাকআপ বা / ব্যাকআপ-পুরাতন ইত্যাদি থেকে / ব্যাকআপ আটকায়


0

আপনার মাউন্ট পয়েন্টের জন্য গ্রেপ / ইত্যাদি / এমতাব সম্ভবত?


1
mtab পুরানো হয়ে যেতে পারে বা মাউন্ট দ্বারা আপডেট করা যায় না, যেমন আপনি যখন মাউন্ট -n ব্যবহার করেন কারণ / কেবল পঠনযোগ্য।
ক্রিস

আমি সম্মত, কিন্তু এটি দেখতে শুরু করার মতো প্রথম জায়গা বলে মনে হয়েছিল।
ওপিডিয়ান


0

যদিও এটি লিনাক্সের প্রশ্ন, এটি সহজে সম্পন্ন হওয়ার পরে কেন এটি পোর্টেবল তৈরি করবেন না?

এর ম্যানুয়াল পৃষ্ঠাটি grepবলেছেন:

পোর্টেবল শেল স্ক্রিপ্টগুলি -Q এবং -s উভয়ই এড়ানো উচিত এবং এর /dev/nullপরিবর্তে মান এবং ত্রুটি আউটপুট পুনর্নির্দেশ করা উচিত ।

সুতরাং আমি নিম্নলিখিত সমাধান প্রস্তাব:

if grep /mnt/foo /proc/mounts > /dev/null 2>&1; then
        echo "Mounted"
else
        echo "NOT mounted"
fi


@ দিমিত্রি চুবারভ আসলেই। কোনটি বহনযোগ্যতার ধারণাটিকে ব্যঙ্গ করে তোলে? হয়তো এটি একটি সাম্প্রতিক আপডেট কিন্তু -qএবং -sPOSIX দ্বারা নির্দিষ্ট তাই এটা নিয়ে কোনো বহনযোগ্যতা ইস্যু যাহাই হউক না কেন করা উচিত হবে না (এখন সামনে যদি না - আমি কি পরিবর্তন ঘটতে যখন ট্র্যাক রাখা করেছি)।
প্রাইফটান

0

এর চেয়ে আরও জটিল হওয়ার দরকার কি?

mount \
    | cut -f 3 -d ' ' \
    | grep -q /mnt/foo \
  && echo "mounted" || echo "not mounted"

1
grep -q /mnt/fooমাউন্ট পয়েন্টগুলিও মিলবে /mnt/foodএবং /not/mnt/foo... কীভাবে grep -qx /mnt/foo?
রাকলাইস

@ ইরাক্লাইস: এটি কার্যকর হবে না। -xপুরো লাইনের সাথে মেলে তবে গ্রেপ ম্যাচ করে।
mivk

1
cut -f 3 -d ' 'মাউন্ট পাথের একটি ফাইলনেমে স্থান থাকলে হোঁচট পড়ে।
উপবৃত্তাকার দর্শন

0

আপনি যে ভলিউমের জন্য যাচাই করছেন তা সম্পর্কে যা জানেন তা নির্ভর করে।

বিশেষভাবে আমি সম্প্রতি গবেষণা করেছি, যেখানে নির্দিষ্ট ফ্ল্যাশ ড্রাইভ বসানো হয়েছে কিনা তা জানতে আমি উদ্বিগ্ন ছিলাম, কী খুব সহজে কাজ করে তা / ডিভ / ডিস্ক / বাই লেবেল / এর অস্তিত্বের জন্য যাচাই করে। ডিভাইসটি প্লাগ ইন করা থাকলে, উদেব স্ক্রিপ্টগুলি লিঙ্কটি উপস্থিত রয়েছে তা নিশ্চিত করে (এবং ডিভাইসটি প্লাগযুক্ত করা হলে এটি সরানো হয়)।

(এটি একটি বহনযোগ্য উত্তর নয়; যদিও এটি লিনাক্সের জন্য অনেকগুলি আধুনিক লিনাক্স বিতরণে কাজ করে, এবং প্রশ্নটি লিনাক্সের জন্য ট্যাগ করা ছিল, এবং এটি এখন পর্যন্ত উল্লিখিত যে কোনও কিছু থেকে সম্পূর্ণ আলাদা পদ্ধতির ফলে এটি সম্ভাবনাগুলি প্রসারিত করে))


0

আপনার মাউন্টপয়েন্টের নীচে ফাইল তৈরি করুন check_mountএবং তারপরে এটির উপস্থিতি আছে কিনা তা পরীক্ষা করে দেখুন?

if [[ -f /something/check_mount ]]; then
   echo "Mounted
   RC=$?
else
   Echo "Not mounted"
   RC=0
fi
exit $RC

-1

আইডেম্পোটিেন্সের জন্য আমাকে শেফে এটি করতে হয়েছিল যেহেতু শেফ-ক্লায়েন্ট চলবে, ভলিউমটি ইতিমধ্যে মাউন্ট হওয়ার কারণে রানটি ব্যর্থ হবে। আমি এটি লেখার সময়, শেফ mountরিসোর্সে কিছু ধরণের বাগ রয়েছে যা আমার প্রয়োজন মতো বৈশিষ্ট্যগুলির সাথে কাজ করে না, তাই আমি executeপরিবর্তে উত্সটি ব্যবহার করে ভলিউমটি মাউন্ট করেছিলাম । আমি এটি কীভাবে করেছি তা এখানে:

if not node['docker-server']['mountpoint'] == "none"
  execute "set up mount" do
    user "root"
    command "mount -t ext4 #{node['docker-server']['mountpoint']} #{node['docker-server']['data-dir']}"
    not_if "grep -qs #{node['docker-server']['data-dir']} /proc/mounts"
  end
end

আমার অ্যাট্রিবিউটস ফাইলে কোনও বিভ্রান্তির ক্ষেত্রে আমার কাছে নিম্নলিখিতগুলি রয়েছে:

default['docker-server']['mountpoint'] = "/dev/vdc"
default['docker-server']['data-dir'] = "/data"

if not node['docker-server']['mountpoint'] == "none"একটি একটি অংশ caseবিবৃতি যদি সার্ভারে মাউন্ট বিন্দু নির্দিষ্ট করা না থাকে যেখানে, মাউন্ট-পয়েন্ট অক্ষমতা none


... এবং এটির মূল প্রশ্নটির সাথে কী সম্পর্ক আছে?!?
ম্যাসিমো

আসল প্রশ্নের সাথে আমার শেফ রেসিপি মন্তব্যের সম্পর্কটি হ'ল লোক ক্রমশ অটোমেশনের দিকে এগিয়ে চলেছে। অতএব, যদি কেউ এখানে কোনও শেফ রেসিপিটিতে কীভাবে এই কাজটি করবেন তা ভাবতে ভাবতে আসে তবে তাদের একটি উত্তর হবে will জীবনে দুটি বিকল্প রয়েছে: 1) সর্বাধিক ন্যূনতম করুন এবং কিছু লোককে খুশি করুন এবং 2) অতিরিক্ত মাইল যান। অতএব, আমার পোস্টটি নীচে চিহ্নিত করার পরিবর্তে, এটি এটির জন্য গ্রহণ করুন: অতিরিক্ত তথ্য যা গৃহীত উত্তরকে সমর্থন করে।
কেএলএ

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

@ কেএলএউ 'অতএব, আমার পোস্টটি নীচে চিহ্নিত করার পরিবর্তে, এটি এটির জন্য গ্রহণ করুন: অতিরিক্ত তথ্য যা গ্রহণিত উত্তরকে সমর্থন করে।' আমি সম্মত হই এবং আমি সাধারণত ভোট কমানোর এক নই (এবং আমি এখানেও নেই) তবে আপনার যদি সেই ধরণের জিনিস নিয়ে সমস্যা হয় তবে আপনার অন্য পয়েন্টগুলির সংযোজন হিসাবে সম্ভবত এটি যুক্ত করা উচিত? অন্যান্য মন্তব্য সংরক্ষণ করুন। তবে অটোমেশনের ক্ষেত্রে ঠিক এটিই বাশ স্ক্রিপ্টগুলি মঞ্জুরি দেয় যাতে আমি আপনার পয়েন্টটি দেখতে ব্যর্থ হই। অবশ্যই আমার মধ্যে প্রোগ্রামার মনে করে যে উপরের স্ক্রিপ্টটি ঘৃণ্য তবে এটি অন্য যে কোন কিছুর চেয়ে ভাষা বিষয় ...
প্রাইফটান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.