shell指令碼入門

2021-08-15 14:44:20 字數 2111 閱讀 2276

str="wxz"

echo $ #輸出 3

提取子字串

以下例項從字串第 2 個字元開始擷取 4 個字元:

string="the shell script is great"

echo $ # 輸出 he s

查詢子字串

查詢字元 "i 或 s" 的位置:

string="runoob is a great company"

echo `expr index "$string" is` # 輸出 8

linux 的字串擷取很有用。有八種方法。

假設有變數 var=

1. # 號擷取,刪除左邊字元,保留右邊字元。

echo $

其中 var 是變數名,# 號是運算子,*// 表示從左邊開始刪除第乙個 // 號及左邊的所有字元

即刪除 http://

結果是 :www.aaa.com/123.htm

2. ## 號擷取,刪除左邊字元,保留右邊字元。

echo $

##*/ 表示從左邊開始刪除最後(最右邊)乙個 / 號及左邊的所有字元

即刪除

結果是 123.htm

3. %號擷取,刪除右邊字元,保留左邊字元

echo $

%/* 表示從右邊開始,刪除第乙個 / 號及右邊的字元

結果是:

4. %% 號擷取,刪除右邊字元,保留左邊字元

echo $

%%/* 表示從右邊開始,刪除最後(最左邊)乙個 / 號及右邊的字元

結果是:http:

5. 從左邊第幾個字元開始,及字元的個數

echo $

其中的 0 表示左邊第乙個字元開始,5 表示字元的總個數。

結果是:http:

6. 從左邊第幾個字元開始,一直到結束。

echo $

其中的 7 表示左邊第8個字元開始,一直到結束。

結果是 :www.aaa.com/123.htm

7. 從右邊第幾個字元開始,及字元的個數

echo $

其中的 0-7 表示右邊算起第七個字元開始,3 表示字元的個數。

結果是:123

8. 從右邊第幾個字元開始,一直到結束。

echo $

表示從右邊第七個字元開始,一直到結束。

結果是:123.htm

注:(左邊的第乙個字元是用 0 表示,右邊的第乙個字元用 0-1 表示)

描述的有點兒不容易懂,看了好久才勉強明白 # ## % %%。

#、## 表示從左邊開始刪除。乙個 # 表示從左邊刪除到第乙個指定的字元;兩個 # 表示從左邊刪除到最後乙個指定的字元。

%、%% 表示從右邊開始刪除。乙個 % 表示從右邊刪除到第乙個指定的字元;兩個 % 表示從左邊刪除到最後乙個指定的字元。

刪除包括了指定的字元本身。

wenxin667

wenxin667

140***[email protected]

6個月前 (08-24)

amau

1@1***t

#!bin/bash

#author:amau

var=""

s1=$

s2=$

s3=$

s4=$

s5=$

echo "關於字串的擷取%,#的使用方法"

echo "原字串為:"$

echo "%%t*的效果:"$

echo "%t*的效果:"$

echo "%%.*的效果:"$

echo "#*/的效果:"$

echo "##*/的效果:"$

執行結果:

關於字串的擷取%,#的使用方法

原字串為:

%%t*的效果:h

%t*的效果:

%%.*的效果:http://www

#*/的效果:/www.runoob.com/linux/linux-shell-variable.html

##*/的效果:linux-shell-variable.html

Shell指令碼(三) Shell指令碼入門

1 指令碼格式 指令碼以 bin bash開頭 指定解析器 2 第乙個shell指令碼 helloworld 1 需求 建立乙個shell指令碼,輸出helloworld 2 案例實操 atguigu hadoop101 datas touch helloworld.sh atguigu hadoo...

shell 指令碼入門

shell 是乙個用 c 語言編寫的程式,它是使用者使用 linux 的橋梁。shell 既是一種命令語言,又是一種程式語言。shell 是指一種應用程式,這個應用程式提供了乙個介面,使用者通過這個介面訪問作業系統核心的服務。ken thompson 的 sh 是第一種 unix shell,win...

Shell指令碼入門

一 shell簡介 shell指令碼,就是利用shell的命令解釋的功能,對乙個純文字的檔案進行解析,然後執行這些功能,也可以說shell指令碼就是一系列命令的集合。shell可以直接使用在win unix linux上面,並且可以呼叫大量系統內部的功能來解釋執行程式,如果熟練掌握shell指令碼,...