실제 사례 declare
와 차이점을 설명할 수 있는 사람이 있나요?typeset
답변1
Zhong 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
.
답변2
declare
나는 악을 피하는 데 도움이 되는 사례를 알고 있습니다 eval
.가변 간접:
$ var=foo
$ x=var
$ declare "$x=another_value"
$ echo $var
another_value