Shell 字符串操作

1. 拼接字符串:

#!/bin/bash
name="happyJared"
# 使用双引号拼接
greeting="hello, "$name" !"
greeting_1="hello, ${name} !"
echo $greeting  $greeting_1
# 使用单引号拼接
greeting_2='hello, '$name' !'
greeting_3='hello, ${name} !'
echo $greeting_2  $greeting_3

2. 获取字符串长度:

#!/bin/bash
#获取字符串长度
name="happyJared"
# 第一种方式
echo ${#name} #输出10
# 第二种方式
expr length "$name"; #输出10

使用 expr 命令时,表达式中的运算符左右必须用空格隔开,如果不含空格,将会输出表达式本身:

expr 5+6    // 直接输出 5+6
expr 5 + 6       // 输出 11

对于某些运算符,还需要使用符号 \ 进行转义,否则会提示语法错误。

expr 5 * 6       // 输出错误
expr 5 \* 6      // 输出30

3. 截取子字符串:

简单的字符串截取:

#从字符串第 1 个字符开始往后截取 10 个字符
str="happyJared is a great man"
echo ${str:0:10} #输出:happyJared

根据表达式截取:

#!bin/bash
#author:Jared

var="http://www.baidu.com/linux/linux-shell-variable.html"

s1=${var%%t*}#h
s2=${var%t*}#http://www.baidu.com/linux/linux-shell-variable.h
s3=${var%%.*}#http://www
s4=${var#*/}#/www.baidu.com/linux/linux-shell-variable.html
s5=${var##*/}#linux-shell-variable.html

你可能感兴趣的:(Shell 字符串操作)