主頁 > 知識庫 > shell基礎(chǔ)學(xué)習(xí)中的字符串操作、for循環(huán)語句示例

shell基礎(chǔ)學(xué)習(xí)中的字符串操作、for循環(huán)語句示例

熱門標(biāo)簽:鐵路電話系統(tǒng) 百度競價(jià)排名 Linux服務(wù)器 AI電銷 地方門戶網(wǎng)站 呼叫中心市場需求 網(wǎng)站排名優(yōu)化 服務(wù)外包

復(fù)制代碼 代碼如下:

#!/bin/bash
my_name="jxq"

echo $my_name
echo ${my_name}

# ------------------------------------
# 字符串操作
# ------------------------------------

# 單引號字符串的限制,雙引號沒有這些限制:
# 單引號里的任何字符都會(huì)原樣輸出,單引號字符串中的變量是無效的
# 單引號字串中不能出現(xiàn)單引號(對單引號使用轉(zhuǎn)義符后也不行)
name="will"
age=24
my_full_name='${name}${age}'
echo ${my_full_name}
my_full_name="${name}${age}"
echo ${my_full_name}

# 字符串拼接
echo ${name}${age}

# 字符串長度
echo ${#name} # 4

# substring
message="I want to be healthy"
echo ${message:2} # want to be health, 2是position
echo ${message:2:4} # want,2是position,4是len

# delete shortest match from front: ${string#substring}
echo ${message#*want}
# delete shortest match from back: ${string%substring}
echo ${message%healthy}

# delete longest match from front: ${string##substring}
echo ${message##*h}
# delete longest match from back: ${string%%substring}
echo ${message%%t*}

# find and replace: ${string/pattern/replacement}
book_name="Catch Eye Eye"
echo ${book_name/Eye/Cat}
# find and replace all match: ${string//pattern/replacement}
echo ${book_name//Eye/Cat}

file_path="/usr/local/bin"
# only replace when pattern match the beginning: ${string/#pattern/replacement}
echo ${file_path/#\/usr/tmp}
# only replace when pattern match the end: ${string/%pattern/replacement}
echo ${file_path/%bin/tmp}

# string index
stringZ=abcABC123ABCabc
echo `expr index "$stringZ" C12` # Mac OSX不支持expr


# ------------------------------------
# 語句
# ------------------------------------

# if
if true
then
 echo "ok, true"
fi

# 寫成一行
if true; then echo "ok"; fi

var='12'
if [ $var -eq 12 ]; then
    echo "This is a numeric comparison if example"
fi

if [ "$var" = "12" ]; then
    echo "This is a string if comparison example"
fi

if [[ "$var" = *12* ]]; then
    echo "This is a string regular expression if comparison example"
fi

name="jxq"
if [ "$name" = "jxq" ]; then
 echo "hello" $name
fi


# 循環(huán)語句
for item in `ls *.sh`
do
 echo $item
 echo "completed"
done

# 寫成一行
for item in `ls *.sh`; do echo $item; echo "completed"; done;

counter=1
while :
do
 echo "bee"
 let "counter=$counter+1"
 if [ $counter -eq 3 ]; then
  break # break/continue與Java類似
 fi
done

# Case語句
opt="install"
case "${opt}" in
 "install" )
  echo "install..."
  exit

 
 "update" )
  echo "update..."
  exit

 
 *) echo "bad opt"
esac

您可能感興趣的文章:
  • Shell中的for和while循環(huán)詳細(xì)總結(jié)
  • Shell中的for循環(huán)總結(jié)
  • Shell腳本中使用for循環(huán)和cat命令實(shí)現(xiàn)按順序合并文件
  • Shell腳本for循環(huán)語句簡明教程
  • Shell中的循環(huán)語句for、while、until實(shí)例講解
  • 一個(gè)shell for循環(huán)與case結(jié)合的腳本(監(jiān)控程序狀態(tài))
  • shell for循環(huán)與數(shù)組應(yīng)用介紹
  • Linux shell 實(shí)現(xiàn)用for循環(huán)100次的方法

標(biāo)簽:衡水 湖南 黃山 崇左 銅川 湘潭 蘭州 仙桃

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《shell基礎(chǔ)學(xué)習(xí)中的字符串操作、for循環(huán)語句示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266