欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

linux?shell編程指南之字符串與數(shù)組

 更新時間:2023年06月27日 09:09:42   作者:逆風(fēng)飛翔的小叔  
這篇文章主要給大家介紹了關(guān)于linux?shell編程指南之字符串與數(shù)組的相關(guān)資料,字符串與數(shù)組是Shell編程中常用的數(shù)據(jù)類型,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下

前言

對字符串的操作在眾多的編程語言中可以說是最基礎(chǔ)的了,字符串(String)就是一系列字符的組合。字符串是 Shell 編程中最常用的數(shù)據(jù)類型之一(除了數(shù)字和字符串,也沒有其他類型了)。

一、shell 中字符串的幾種格式

在shell中,字符串主要有下面幾類寫法:

  1. 單引號方式
  2. 雙引號方式, 推薦
  3. 不用引號方式

三種寫法的區(qū)別

1、使用單引號 '' 的字符串:

任何字符都會原樣輸出,在其中使用變量是無效的。

2、由雙引號" "包圍的字符串:

1)其中包含了變量,那么該變量會被解析得到值,而不是原樣輸出;

2)字符串中還可以出現(xiàn)雙引號的子字符串,但是需要轉(zhuǎn)義;

3、不被引號包圍的字符串

1)不被引號包圍的字符串中出現(xiàn)變量時也會被解析,這一點和雙引號" "包圍的字符串一樣;

2)字符串中不能出現(xiàn)空格,否則空格后邊的字符串會作為其他變量或者命令解析;

二、字符串常用操作

1、獲取字符串長度

${#字符串變量名}

2、字符串拼接

幾種常用的拼接方式:

  1. 無符號拼接
  2. 雙引號拼接
  3. 混合拼接

無符號拼接

雙引號拼接

混合拼接

3、字符串截取

字符串截取操作在眾多的編程語言中可以說是非常常見的一種操作了,尤其是在python語言中,使用非常高頻,而在shell中,也提供了畢竟豐富的字符串截取的操作;

格式說明
${變量名:start:length}從 string 字符串的左邊第 start 個字符開始, 向右截取 length 個字符。
${變量名:start}從 string 字符串的左邊第 start 個字符開始截取,直到最后。
${變量名:0-start:length}從 string 字符串的右邊第 start 個字符開始, 向右截取 length 個字符。
${變量名:0-start}從 string 字符串的右邊第 start 個字符開始截取,直到最后。
${變量名#*chars}從 string 字符串第一次出現(xiàn) *chars 的位置開始, 截取 *chars 右邊的所有字符。
${變量名##*chars}從 string 字符串最后一次出現(xiàn) *chars 的位置開始, 截取 *chars 右邊的所有字符。
${變量名%chars*}從 string 字符串最后第一次出現(xiàn) chars* 的位置開始, 截取 chars* 左邊的所有字符。
${變量名%%chars*}從 string 字符串第一次出現(xiàn) chars* 的位置開始, 截取 chars* 左邊的所有字符

下面隨機演示幾個截取的操作命令

三、數(shù)組

Shell 支持?jǐn)?shù)組(Array), 數(shù)組是若干數(shù)據(jù)的集合,其中的每一份數(shù)據(jù)都稱為數(shù)組的元素。

注意Bash Shell 只支持一維數(shù)組,不支持多維數(shù)組

1、數(shù)組語法

在 Shell 中,用括號( )來表示數(shù)組,數(shù)組元素之間用空格來分隔. 語法為

array_name=(item1  item2 ...)          # 方式1
array_name=([索引下標(biāo)1]=item1  [索引下標(biāo)2]=item2  ...)          # 方式2

注意,賦值號 = 兩邊不能有空格

2、數(shù)組定義

使用小括號定義一組數(shù)字

num1=(1 2 3 4 5)

數(shù)組中可以存在不同類型的元素

num1=(1 2 3 4 “hello”)

 Shell數(shù)組元素定義后不是固定的, 定義后還可以賦值

arr[6]=100

也可以給指定元素賦值初始化

arr2=([0]=1 [2]=100 [4]=aa)

3、數(shù)組中值的獲取

1.通過下標(biāo)獲取元素值,index從0開始

${arr[index]}

2、獲取值同時復(fù)制給其他變量

item=${arr[index]}

3、使用 @* 可獲取數(shù)組中的所有元素

${arr[@]}
${arr[*]}

4.獲取數(shù)組的長度或個數(shù)

${#arr[@]}
${#arr[*]}

5.獲取數(shù)組指定元素的字符長度

${#arr[索引]}

4、數(shù)組的拼接

所謂 Shell 的數(shù)組拼接(數(shù)組合并),就是將兩個數(shù)組連接成一個數(shù)組

語法

使用 @* 獲取數(shù)組所有元素之后進行拼接:

array_new=(${array1[@]} ${array2[@]} ...)
array_new=(${array1[*]} ${array2[*]} ...)

案例展示

5、數(shù)組的刪除

刪除數(shù)組指定元素數(shù)據(jù)

unset array_name[index]

刪除整個數(shù)組

unset array_name

案例展示:刪除num1 中的第一個元素

案例展示:刪除num1這個數(shù)組

總結(jié)

到此這篇關(guān)于linux shell編程指南之字符串與數(shù)組的文章就介紹到這了,更多相關(guān)shell字符串與數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • linux下通過命令行獲取gmail的新郵件

    linux下通過命令行獲取gmail的新郵件

    在這篇文章中,我將為你展示 Linux 命令行的另一個漂亮干練的使用案例:訪問 Google 的 Gmail 服務(wù),有需要的小伙伴可以參考下。
    2015-05-05
  • 每天一個linux命令之locate 命令

    每天一個linux命令之locate 命令

    locate命令可以在搜尋數(shù)據(jù)庫時快速找到檔案,數(shù)據(jù)庫由updatedb程序來更新,updatedb是由cron daemon周期性建立的,這篇文章主要介紹了每天一個linux命令之locate 命令的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • Linux中scp命令獲取遠(yuǎn)程文件的方法

    Linux中scp命令獲取遠(yuǎn)程文件的方法

    scp用于在Linux下進行遠(yuǎn)程拷貝文件的命令,和它類似的命令有cp。接下來通過本文給大家介紹Linux中scp命令獲取遠(yuǎn)程文件的方法,一起看看吧
    2016-08-08
  • Shell腳本注釋寫法

    Shell腳本注釋寫法

    這篇文章主要介紹了Shell腳本注釋的3種寫法,包含單行注釋的方法和多行注釋的多種方法,需要的朋友可以參考下
    2014-07-07
  • 在Linux中查找 IP 地址的3種方法

    在Linux中查找 IP 地址的3種方法

    在 Linux 系統(tǒng)中,經(jīng)常需要查找 IP 地址以進行網(wǎng)絡(luò)配置、故障排除或安全管理,無論是查找本地主機的 IP 地址還是查找其他設(shè)備的 IP 地址,本文將介紹三種簡單的方法,幫助你在 Linux 中輕松找到所需的 IP 地址,需要的朋友可以參考下
    2023-09-09
  • 合并一個文件夾下多個文件內(nèi)容的單行shell命令

    合并一個文件夾下多個文件內(nèi)容的單行shell命令

    有時候我們需要合并一個文件夾下多個文件內(nèi)容,那么就可以參考下面的代碼,單行shell就是可以實現(xiàn)了,需要的朋友可以參考下
    2013-02-02
  • php編譯安裝常見錯誤大全和解決方法

    php編譯安裝常見錯誤大全和解決方法

    這篇文章主要介紹了php編譯安裝常見錯誤大全和解決方法,需要的朋友可以參考下
    2014-04-04
  • Linux重命名文件和文件夾的兩種方法

    Linux重命名文件和文件夾的兩種方法

    這篇文章主要介紹了Linux重命名文件和文件夾的兩種方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-12-12
  • shell自定義函數(shù)的6個特點總結(jié)

    shell自定義函數(shù)的6個特點總結(jié)

    這篇文章主要介紹了shell自定義函數(shù)的6個特點總結(jié),也是使用shell自定義函數(shù)的一些注意事項總結(jié),以及小技巧介紹,需要的朋友可以參考下
    2014-07-07
  • Linux shell查找文件顯示行號和對應(yīng)區(qū)間的內(nèi)容

    Linux shell查找文件顯示行號和對應(yīng)區(qū)間的內(nèi)容

    今天小編就為大家分享一篇關(guān)于Linux shell查找文件顯示行號和對應(yīng)區(qū)間的內(nèi)容,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12

最新評論