最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Shell數(shù)組的奇技淫巧

2023-08-03 17:23 作者:bili_55193953943  | 我要投稿

?1 眾所周知,在Shell中可以這樣輸出變量的值

輸出值

2 也可以輸出變量的位數(shù)

輸出值

3.1 那末,定義一個數(shù)組,我們可以單個賦值

3.2 也可以一次性賦值(賦值同上)

那末,3+1,可以輸出數(shù)組中各元素的值

輸出值

同樣地,3+2,可以得到元素長度和數(shù)組長度

輸出值

其中@與*的區(qū)別如下:
@

輸出值

*

輸出值

可見,@是分元素,*是通配

3+2結(jié)果可得兩點特性

  1. 計算數(shù)組長度時不會排除空元素

  2. 數(shù)組元素從0開始計算,可以得到數(shù)組長度

由特性,可得到在數(shù)組尾部擴充新元素的方法

輸出值

原理很好理解,由于元素序號由0開始計算,數(shù)組長度恰好就是下一個元素的序號

4 刪除元素

輸出值

去除了兩個空元素,數(shù)組長度為3,但是

輸出值為空
明明已經(jīng)刪除了1號與2號兩個空元素,后面的元素不會依次補全刪掉的位置。要想補全,就得刷新數(shù)組:

輸出值

此處的@不可替換為*,否則"1 2 3 4 5"會變成一個元素,不加引號都會變成五個元素

以下為兩個實踐項目:
1, 輸入數(shù)組元素個數(shù),并依次讀入數(shù)組

實踐如下

其實這個例子蠻牽強的,將第一個for循環(huán)中的ele_arr[${#ele_arr[@]}]替換為ele_arr[$i]也不會有任何問題。

2, 輸入一個正整數(shù),生成1到該正整數(shù)的數(shù)組,并打亂輸出(不重復(fù))

實踐如下

留下一個小問題,最后的xargs是干什么的?

自從用上了shellcheck+vim-syntastic,告別了很多錯誤&&危險寫法,非常推薦一試
本文基于LGPLv3協(xié)議(https://www.gnu.org/licenses/lgpl-3.0.zh-cn.html)開源

Shell數(shù)組的奇技淫巧的評論 (共 條)

分享到微博請遵守國家法律
鄂温| 攀枝花市| 班戈县| 河曲县| 永靖县| 无极县| 麟游县| 齐河县| 广安市| 镇赉县| 浦北县| 玉田县| 康马县| 同江市| 永城市| 梨树县| 错那县| 延安市| 荔浦县| 寿光市| 平乐县| 兖州市| 英吉沙县| 抚州市| 瓮安县| 阿克苏市| 雷波县| 敦煌市| 樟树市| 邯郸市| 墨脱县| 辉县市| 聂拉木县| 巴彦县| 富顺县| 建德市| 衡山县| 翁源县| 内江市| 北海市| 岳池县|