declare命令有如下选项:

-a 声明一个数组

-i 声明一个整型

-f 打印所有函数定义

-F 仅打印函数名字

-r 声明一个readonly变量,该变量的值无法改变,并且不能为unset

-x 和export的作用类似

1) 这里需要注意的是,当使用-i选项来做算数运算的时候,等号右边的变量前面没有$符,并且等号右边的变量可以不用declare -i进行声明。shell自动把赋值给declare -i声明的表达式作为算数表达式求值。同时,为了避免一些特殊符号(比如*),最好将表达式放在单引号里面:

a=2
b=3
declare -i result='a * b'

2)与declare -i类似的操作是let,语法格式如下:

let var=expression

a=2
b=3
let result='a * b'

同样,等号右边的变量前面没有$符,并且等号右边的变量可以不用declare -i进行声明。shell自动把赋值给declare -i声明的表达式作为算数表达式求值。同时,为了避免一些特殊符号(比如*),最好将表达式放在单引号里面

3)将一个数组声明为-r,那么整个数组,以及数组中的每一个元素都是readonly的。

shell中的declare命令相关推荐

  1. linux shell 中的sleep命令

    开始还以为是这样的语法: sleep(1), 后面发现是: linux shell 中的sleep命令 分类: LINUX 在有的shell(比如linux中的bash)中sleep还支持睡眠(分,小 ...

  2. linux脚本添加source,shell中的source命令的巧妙用法

    首先,通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录.例如,当我们修改了/etc/profile文件,并想让它立刻生效,而不用重新登录,就可以使用source命令,如sourc ...

  3. shell中的expect命令

    原文https://blog.csdn.net/jxdl6655/article/details/78626749 expect可以实现shell实现不了的用户交互的需求.expect可以将交互写在一 ...

  4. shell中 的 export命令

    export 功能说明:设置或显示环境变量. 语 法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量.export可新增,修改 ...

  5. [linux运维]1@linux shell中的实用命令

    函数传参 shell中如何写一个函数呢? 这个问题, 首先说, shell中的函数, 在方法体里, 没有形参, 都是通过默认的特殊值获得的, 比如$1, $2, 参数的数量用. 而传参呢, 也是通过方 ...

  6. shell中一些特殊命令|: 管道命令。;;在前一个命令结束时,而忽略其返回值,继续执行下一個命令。

    shell传递参数 $0 对应的是当前 Shell 脚本程序的名称,$#对应的是总共有几个参数,$*对应的是所有位置的参数值,$?对应的是显示上一次命令的执行返回值,而$1.$2.$3--则分别对应着 ...

  7. shell 中的 set命令简介

    shell 中的调试 set命令简介 set命令简介 语法 常用命令说明 其他执行shell脚本调试的方法 set命令简介 使用内置命令set可以调试Shell脚本的指定部分. set命令通过选项开关 ...

  8. Shell中的Sed命令详解

    简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处 ...

  9. 【Linux入门到精通系列讲解】shell中的eval命令

    eval命令用法: 当我们在命令行前加上eval时,shell就会在执行命令之前扫描它两次.eval命令将首先会先扫描命令行进行所有的置换,然后再执行该命令.该命令适用于那些一次扫描无法实现其功能的变 ...

最新文章

  1. C#读取excel文件数据丢失问题
  2. PingCode 全新子产品Access (目录服务)正式发布!
  3. mysql双主使用reset master清除日志要小心
  4. Android中Spinner下拉列表(使用ArrayAdapter和自定义Adapter实现)
  5. java循环队列_java实现循环队列(顺序队列)
  6. C#集合--Dictionary
  7. miui11禁止更新方法
  8. 计算机网络第4章(网络层)
  9. phpstudy如何安装景安ssl证书 window下apache服务器网站https访问
  10. C#中创建线程的四种方式
  11. 彻底关闭Windows10自动更新的详细解决方案
  12. 李嘉诚语录/汪涵语录/史玉柱趣事
  13. 地理信息系统GIS基础知识
  14. decimal在java怎么用?
  15. 2015年,我的创业记忆片段
  16. 神兵利器——使用LINQ to SQL检索和操作数据库
  17. 数字视频压缩的可行性
  18. WindowsForm切换窗口的几种常见实现
  19. 如何群发邮件?群发邮件软件哪个好?
  20. 下载 com.mob.sdk:MobSDK 失败处理

热门文章

  1. Qt与XP的各种版本问题
  2. 猪价涨27%,4国抢占中国猪肉市场,智利对华肉类出口增长近9成
  3. 表情包GIF用什么软件 如何制作动态图
  4. 【Andrew Ng深度学习作业】C1W4——Building your Deep Neural Network - Step by Step
  5. git clone切换分支
  6. 2020网鼎杯青龙组部分题目WP
  7. 【MATLAB】详解 M 文件与 M 函数
  8. SIGIR 2021 | 广告系统位置偏差的CTR模型优化方案
  9. Tabulator支持分页、中文排序和过滤
  10. AES和DES代码实现