成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在 bash 腳本中如何檢查一個字符串是否包含另一個字符串

系統 Linux
在 bash 腳本中,有不止一種檢查子字符串的方法,我們今天介紹一些簡單的例子,然后在分享一個常用的 bash 腳本。

我們在寫 bash 腳本的時候,假如有一個字符串,我們想檢查其中是否包含另一個子字符串,那這個時候需要怎樣做呢?

在 bash 腳本中,有不止一種檢查子字符串的方法,我們今天介紹一些簡單的例子,然后在分享一個常用的 bash 腳本。

使用if-else語句檢查bash中的子字符串

如果您熟悉bash中的條件語句,可以使用它以以下方式檢查字符串是否包含子字符串:

if [[ $fullstring == *"$substr"* ]];

一個簡單的例子

上面的腳本中使用了雙括號,這是有必要的,它是一種原生的方式,因為它沒有使用任何其他工具。下面我們舉個例子來對上面的腳本做一下解釋。

使用長字符串初始化變量:

$ fullstring="This is a string with a stretch"

然后,將字符串“stretch”存儲在變量 substr 中:

$ substr="stretch"

再然后進行字符串比較:

$ if [[ $fullstring == *"$substr"* ]]; then

這里的星號 * 表示零個或多個字符。大家應該熟悉 bash 腳本中引號的概念,引號內的 $substr 將其替換為真實的值。

基本上,上述腳本是檢查完整的字符串是否與 xxxxxxsubstrxxxxxx 類型的字符串匹配。

另外,也可以直接使用子字符串,而不是通過變量:

$ if [[ $fullstring == "stretch" ]]; then

下面我們使用 else 語句完成這個腳本,如果找不到子字符串,該語句將顯示另一條消息:

#!/bin/bash
fullstring="This is a string with a stretch"
substr="stretch"
if [[ $fullstring == *"$substr"* ]]; then
echo "Found $substr!"
else
echo "$substr not found!"
fi

運行上述腳本,將會找到子字符串:

$ bash ??substr.sh??
Found stretch!

另一個例子

子字符串在腳本中非常有助于與用戶交互。使用 read 命令可以讓 bash 腳本接受用戶的輸入。

echo "Hey there..what is your name?"
read Name
echo "Hello "$name"! The Matrix Resurrections trailer is here! Is your pill Red or Blue?"
read Pill
if [[ $Pill == "Red" || Name"!"
echo "Welcome..to the real world "$Name"!"
else
echo "Wake Up "$Name"!"
fi

授予它可執行權限并執行腳本:

$ chmod +x ??makeyourchoice.sh??
$ ./makeyourchoice.sh

其輸出如下所示:

Hey there..what is your name?
avimanyu
Hello avimanyu! The Matrix Resurrections trailer is here! Is your pill Red or Blue?
I have Red pill
Welcome..to the real world avimanyu!

在上面的腳本中,我們使用 if 語句以考慮兩種可能性(區分大小寫)。Red 是一種可能的輸入,但是 red(小寫)也是一種可能性,所以我們添加了另一個條件,|| 表示 “或”,如果輸入為 Red,則它是一個子字符串。即使 red(小寫)不是用戶輸入,我們也需要 在腳本中添加上它。

使用 grep 命令 在 bash 中查找子字符串

這是在bash中查找字符串中的子字符串的另一種方法。按以下方式使用grep命令:

if grep -q "$substr" <<< "$fullstring"; then echo "Found"; fi

選項 -q 表示 grep 將處于安靜模式(quiet mode),不顯示任何輸出。另外需要注意,有 3 個 <,而不是 2 個。

責任編輯:龐桂玉 來源: TIAP
相關推薦

2023-04-25 15:46:51

Python字符串

2020-09-18 14:23:50

字符

2019-12-16 09:26:05

Java設計操作系統

2022-12-08 15:55:52

JavaScript字符串

2019-01-08 09:23:16

Java字符串編碼

2010-10-09 13:41:42

MySQL字符串

2021-07-26 10:58:07

Chromebook谷歌更新

2020-10-14 06:18:20

Golang字符串數組

2009-11-16 17:59:13

PHP數組轉字符串

2009-08-12 11:24:25

C# String對象

2023-06-01 07:49:51

2020-11-03 18:36:37

面試字符串算法

2020-09-07 07:35:03

Grep命令字符串

2023-05-05 08:41:16

SQL字符函數

2021-12-03 08:50:25

LeetCode正則表達式算法

2022-11-25 07:53:26

bash腳本字符串

2009-11-27 13:14:07

PHP函數strist

2009-12-04 18:05:05

PHP stristr

2010-09-26 13:51:48

SQL游標

2020-06-28 14:18:23

Python代碼開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91久久久久久 | 亚洲国产精品99久久久久久久久 | 欧美日韩国产在线观看 | 色资源在线观看 | 美日韩免费视频 | 欧美一级全黄 | 欧美国产免费 | 特级丰满少妇一级aaaa爱毛片 | 一区二区成人在线 | 久久99精品久久久久久国产越南 | 国产欧美日韩一区 | 亚洲伦理自拍 | 一区二区日韩精品 | 日韩aⅴ视频 | 一区精品在线观看 | 亚洲乱码一区二区三区在线观看 | 成人片在线看 | 国产精品久久久久久久久久久久 | 99视频在线| 欧美一区二区在线免费观看 | 黄视频在线网站 | 免费一区二区三区在线视频 | 成人午夜激情 | 一区二区三区视频 | 久久婷婷国产麻豆91 | 国产在线观看网站 | 99国产精品99久久久久久 | 在线视频国产一区 | 欧美区在线观看 | 欧美福利精品 | 日韩二区 | 久综合| 蜜臀网| 亚洲成人免费 | 美女视频一区 | 日韩电影免费在线观看中文字幕 | 国产在线视频三区 | 国产精品不卡 | 亚洲三区在线观看 | 一级a性色生活片久久毛片 午夜精品在线观看 | 色欧美片视频在线观看 |