'সিটুতে' কমান্ড চালানোর জন্য ব্যাকটিক্সের পরিবর্তে প্যারেনগুলি কেন ব্যবহার করবেন?


7

আমি সম্প্রতি বাম বন্ধনী থেকে ব্যাকটিক ব্যবহার কমান্ড চালানো থেকে আমার শেল স্ক্রিপ্টিং নামান শুরু করেছে স্থানেই এবং অন্য কিছু ফলাফল ব্যবহার করুন। উদাহরণ:

for line in `cat file`
do
    echo "$line"
done

এখন আমি এইভাবে পরিবর্তিত হয়ে প্যারেন্স ব্যবহার করি:

for line in $(cat file)
...

দুটি পদ্ধতির মধ্যে আসল পার্থক্য কী এবং কেন পেরেনের বিকল্পটিকে ব্যাকটিক্সের চেয়ে ভাল বলে বিবেচনা করা হয়?


(পেডেন্ট্রি অনুসরণ করে) নোট করুন যে ব্যাশে, আপনি পুরোটি শেলের $(cat file)সাথে $(< file)সঞ্চালিত হয়ে প্রতিস্থাপন করতে পারেন (একটি বিড়ালের প্রক্রিয়া তৈরির জন্য মূল্যবান মাইক্রোসেকেন্ডগুলি নষ্ট করে দেওয়া)।
গ্লেন জ্যাকম্যান


@ গ্রায়েটি - দুটি পদ্ধতির মধ্যে পার্থক্যটি প্রদর্শন করার জন্য এটি সম্পূর্ণরূপে একটি স্বতঃস্ফূর্ত উদাহরণ
ওয়ারেন

3
এছাড়াও, এই প্রশ্নটি সম্পর্কে বাশফাক্স / 082
মাধ্যাকর্ষণ

উত্তর:


13

কোনও কার্যকরী পার্থক্য নেই, তবে $()নীড় বাঁধাই কিছুটা সুন্দর এবং অনুসরণ করা সহজ। এই নির্বোধ উদাহরণ বিবেচনা করুন:

$ echo `echo \`echo \\\`echo foo\\\`\``
foo

বনাম

$ echo $(echo $(echo $(echo foo)))
foo

এখন এটি একটি জটিল সিরিজ কমান্ড যা কার্যকর কিছু করে;) এর সাথে এটি বিবেচনা করুন)

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