问题描述
在Bash中输入变量,就是之间的差别声明
和排版
?当一个函数内部使用的:是什么之间的差别声明
和排版
和本地
?
When typing variables in Bash, what is the difference between declare
and typeset
? When used inside a function: what is the difference between declare
and typeset
and local
?
我所遇到的唯一的区别是,排版移植到的ksh脚本。除此之外,还有为什么要成为pferred比其他$ P $的原因是什么?
The only difference I have come across is that typeset is portable to ksh scripts. Other than that, are there any reasons why one should be preferred over the other?
更新:新增本地
来的问题。
推荐答案
- 的
差异排版
和声明
:
- Difference between
typeset
anddeclare
: -
之间的差异声明
(或排版
)和本地
函数内使用时: - Difference between
declare
(ortypeset
) andlocal
when used inside a function:
前者更便于携带(例如KSH),而后者更preferable时,便携性不是一个问题。
The former is more portable(e.g. ksh), while the latter is more preferable when portability is not a concern.
前者指的是后者,但功能更强大。例如,声明-ix
使 X
有整数
属性,声明-rx
,使 X
只读等。
The former implies the latter, but more powerful. For example, declare -i x
makes x
have the integer
attribute, declare -r x
makes x
readonly, etc.
这篇关于申报,排版和局部变量在Bash中之间的差异的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!