declare
## 1、功能介紹
聲明變量的屬性,如果使用declare,后面沒有任何參數,那么bash就會主動將所有變量名與內容都調出來,just as set.
### 1.1 規范數據類型:
**語??? 法:** declare \[-aixr\] variable
**參數說明:**
\-a? :將后面的variable定義為數組
\-i? :將后面的variavle定義為整數數字
\-x? :用法與export一樣,就是將后面的variable變成環境變量
\-r? :將一個variable的亦是設置成只讀,讀變量不可更改內容,也不能unset
## 2.例子
### 2.1 將變量sum對200+400求和
```
[root@linux ~]#sum=200+400
[root@linux ~]#echo $sum
200+400
```
此處并沒有像我們想像中那樣會得到結果600,而是200+400,這是由于它是文字類型的變量屬性
```
[root@linux ~]#declare -i sum=200+400
[root@linux ~]#echo $sum
600
```
### 2.2 將sum變成環境變量
\[root@linux ~\]#declare -x sum
### 2.3 讓sum變成只讀屬性,不可更改
```
[root@linux ~]#declare -r sum
[root@linux ~]#sum=apple
-bash: sum: readonly variable
[root@linux ~]#unset sum
-bash: unset: sum: cannot unset: readonly variable
```
在這里要特別說明一下:聲明為只讀變量之后,不能修改該變量的屬性,也不能刪除該變量,所以,在聲明變量的時候,應該慎用,避免有去無回。另外,你在命令行中敲readonly,你會發現有很多只讀變量,當然這些變量也是不能夠被修改或刪除的。
- Linux
- 高級
- 殺毒
- 記一次中毒事件
- clamav查毒軟件
- 處理挖礦病毒
- 定時任務
- kill
- chattr文件保護
- 運行級別
- Linux啟動
- 文件加密
- ssh免密登錄
- .ssh
- 問題
- 腳本
- 阿里云域名解析
- yum源
- 時間同步
- keepalived實現高可用
- dos字符與unix字符
- 大文件上傳
- 基礎
- proc目錄
- 設置宋體
- 基礎命令_01
- 基礎命令_02
- SELinux
- 文件描述符
- 基礎命令_03
- awk
- 系統日志
- date命令
- bc命令
- lsof
- vim快捷鍵
- shell
- 循環控制
- expr
- 執行腳本的方式
- declare
- shell腳本
- 控制啟停腳本
- 數值計算
- centos
- 配置網絡
- 環境
- 灰度環境
- ansible
- 模塊
- 語法
- file模塊
- setup模塊
- ping模塊
- copy模塊
- command模塊
- shell模塊
- service模塊
- cron模塊
- yum模塊
- user 模塊
- group模塊
- 指定用戶
- playbook
- 實例
- ansible安裝
- Jenkins
- shell部署
- 導入已有項目的配置
- 執行shell
- tungsten數據同步
- 防火墻
- netfilter