क्या कोई भी वास्तविक जीवन के उदाहरणों के साथ घोषणा और टाइपसेट के बीच अंतर समझा सकता है।
क्या कोई भी वास्तविक जीवन के उदाहरणों के साथ घोषणा और टाइपसेट के बीच अंतर समझा सकता है।
जवाबों:
में bash
, typeset
और declare
बिल्कुल समान हैं। अंतर केवल इतना है कि typeset
इसे अप्रचलित माना जाता है।
typeset: typeset [-aAfFgilrtux] [-p] name[=value] ...
Set variable values and attributes.
Obsolete. See `help declare'.
मैन पेज भी उन्हें एक ही सांस में सूचीबद्ध करता है:
declare [-aAfFgilrtux] [-p] [name[=value] ...]
typeset [-aAfFgilrtux] [-p] [name[=value] ...]
Declare variables and/or give them attributes.
typeset
उदाहरण के लिए, कुछ अन्य गोले के लिए पोर्टेबल है ksh93
। यदि आप क्रॉस-शेल पोर्टेबिलिटी के लिए लक्ष्य कर रहे हैं, तो उपयोग करें typeset
(और सुनिश्चित करें कि जिस तरह से आप इसे कॉल कर रहे हैं वह पोर्टेबल है)। यदि आप ऐसी पोर्टेबिलिटी की परवाह नहीं करते हैं, तो उपयोग करें declare
।
help typeset
, अंदर नहीं man typeset
।
typeset
अप्रचलित क्यों माना जाता है?
मैं एक ऐसे मामले को जानता हूं जहां declare
बुराई से बचने के लिए उपयोगी है eval
: चर अप्रत्यक्ष :
$ var=foo
$ x=var
$ declare "$x=another_value"
$ echo $var
another_value
typeset
और declare
?