【Linux】一步一步学Linux——declare命令(217)
发布日期:2021-06-29 20:45:13
浏览次数:2
分类:技术文章
本文共 1976 字,大约阅读时间需要 6 分钟。
00. 目录
文章目录
01. 命令概述
declare命令用于定义shell变量,但declare定义的变量仅能在当前shell环境中起作用,切换shell环境后将无效。
declare命令用于声明和显示已存在的shell变量。当不提供变量名参数时显示所有shell变量。declare命令若不带任何参数选项,则会显示所有shell变量及其值。declare的功能与typeset命令的功能是相同的。
02. 命令格式
用法:declare [选项] [参数]
03. 常用选项
-a 声明数组变量-f 仅显示函数-F 不显示函数定义-i 先计算表达式,把结果赋给所声明变量-p 显示给定变量的定义的方法和值,当使用此选项时,其他的选项将被忽略-r 定义只读变量-x 将指定的Shell变量转换成环境变量
04. 参考示例
4.1 显示已定义的变量
[root@localhost ~]# declare
4.2 定义新的Shell变量
[root@localhost ~]# declare AA="dengjin"[root@localhost ~]# echo $AAdengjin[root@localhost ~]#
4.3 先计算表达式,把结果赋给所声明变量
[root@localhost ~]# declare -i var=100+300[root@localhost ~]# echo $var400[root@localhost ~]#
4.4 显示变量var1和var2的定义
[root@localhost ~]# declare -p var AAdeclare -i var="400"declare -i AA="dengjin"[root@localhost ~]#
4.5 显示所有的环境变量
[root@localhost ~]# declare -xdeclare -x CPLUS_INCLUDE_PATH=":/opt/instantclient_11_2/sdk/include"declare -x HISTCONTROL="ignoredups"declare -x HISTSIZE="1000"declare -x HOME="/root"declare -x HOSTNAME="localhost.localdomain"declare -x LANG="zh_CN.UTF-8"declare -x LD_LIBRARY_PATH=":/opt/instantclient_11_2"declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"declare -x LIBRARY_PATH=":/opt/instantclient_11_2"declare -x LOGNAME="root"
4.6 声明整数型变量
[deng@localhost ~]$ declare -i AA[deng@localhost ~]$ AA=33[deng@localhost ~]$ echo $AA33[deng@localhost ~]$ AA="hello icast"-bash: hello icast: 表达式中有语法错误 (错误符号是 "icast")[deng@localhost ~]$ AA=44[deng@localhost ~]$
4.7 取消变量的属性
[deng@localhost ~]$ declare +i AA[deng@localhost ~]$ AA="hello dengjin"[deng@localhost ~]$ echo $AAhello dengjin[deng@localhost ~]$
4.8 设置变量为只读
[deng@localhost ~]$ declare -r var=33[deng@localhost ~]$ echo $var33[deng@localhost ~]$ var=99-bash: var: 只读变量[deng@localhost ~]$
4.9 声明数组变量
[deng@localhost ~]$ declare -a cd='([0]="aa" [1]="bb" [2]="cc")'[deng@localhost ~]$ echo ${cd[@]}aa bb cc[deng@localhost ~]$
4.10 声明环境变量
[deng@localhost ~]$ declare -x AA=33[deng@localhost ~]$ bash[deng@localhost ~]$ echo $AA33[deng@localhost ~]$
05. 附录
参考:
转载地址:https://dengjin.blog.csdn.net/article/details/100567177 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年04月17日 06时24分09秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
自然语言处理领域顶级机构
2019-04-30
优先队列priority_queue
2019-04-30
洛谷 P1115 最大子段和(利用优先队列priority_queue)
2019-04-30
环形结构上的动态规划问题的基本处理方式
2019-04-30
二维前缀和:轰炸区最优选取
2019-04-30
树形动态规划:二叉苹果树
2019-04-30
利用STL中的vector实现“有向有权图”的邻接表表示
2019-04-30
利用STL中的vector实现“有向无权图”的邻接表表示
2019-04-30
利用STL中的vector实现“无向无权图”的邻接表表示
2019-04-30
原命题等价于逆否命题。用于理解素数判断6X法
2019-04-30
素数判断-6X法
2019-04-30
用STL队列求解约瑟夫环问题
2019-04-30
用循环链表求解约瑟夫环问题
2019-04-30
用数组模拟求解约瑟夫环问题
2019-04-30
判断无向连通图是二分图的方法(黑白染色法)
2019-04-30
读取字符数组、字符串中的空格
2019-04-30
二分图的最大匹配(匈牙利算法)
2019-04-30
Bellman - Ford算法
2019-04-30
SPFA算法-邻接表存图
2019-04-30
Python之turtle.circle()函数理解
2019-04-30