shell脚本里,如何删除变量的最后一个字符?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本里,如何删除变量的最后一个字符?相关的知识,希望对你有一定的参考价值。

例如:num="1;2;3;" 怎么去掉3后面的 “;” 。输出“1;2;3”

参考技术A

STR=123456abc

FINAL=`echo $STR: -1`

或者

FINAL=$STR: -1

都可以让FINAL获得c这个最后一个字符

Linux 的字符串截取很有用。有八种方法。

假设有变量 var=http://www.aaa.com/123.htm.

1. # 号截取,删除左边字符,保留右边字符。代码如下:


echo $var#*//

其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符

即删除 http://

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

2. ## 号截取,删除左边字符,保留右边字符。代码如下:


echo $var##*/

##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符

即删除 http://www.aaa.com/

结果是 123.htm

3. %号截取,删除右边字符,保留左边字符代码如下:


echo $var%/*

%/* 表示从右边开始,删除第一个 / 号及右边的字符

结果是:http://www.aaa.com

4. %% 号截取,删除右边字符,保留左边字符代码如下:


echo $var%%/*

%%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符

结果是:http:

5. 从左边第几个字符开始,及字符的个数代码如下:


echo $var:0:5

其中的 0 表示左边第一个字符开始,5 表示字符的总个数。

结果是:http:

6. 从左边第几个字符开始,一直到结束。代码如下:


echo $var:7

其中的 7 表示左边第8个字符开始,一直到结束。

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

7. 从右边第几个字符开始,及字符的个数。代码如下:


echo $var:0-7:3

其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。

结果是:123

8. 从右边第几个字符开始,一直到结束。

代码如下:


echo $var:0-7

表示从右边第七个字符开始,一直到结束。

结果是:123.htm

shell脚本里获取字符串的最后一个字符

STR=123456abc

FINAL=`echo ${STR: -1}`

或者

FINAL=${STR: -1}

都可以让FINAL获得c这个最后一个字符

 

以上是关于shell脚本里,如何删除变量的最后一个字符?的主要内容,如果未能解决你的问题,请参考以下文章

Shell 脚本 - 从变量中删除第一个和最后一个引号 (")

如何从shell脚本中的变量中删除回车

如何用shell脚本语言去截取字符串

shell脚本sed命令如何使用变量替换掉包含指定字符串的整行

如何使用 sed 从字符串中删除前 X 个字符?

shell脚本里获取字符串的最后一个字符