`

shell脚本变量和字符串截取

 
阅读更多

变量说明:

$ Shell本身的PID(ProcessID)

$! Shell最后运行的后台Process的PID

$? 最后运行的命令的结束代码(返回值)

$- 使用Set命令设定的Flag一览

$* 所有参数列表。如”$*”用「”」括起来的情况、以”$1 $2 … $n”的形式输出所有参数。

$@ 所有参数列表。如”$@”用「”」括起来的情况、以”$1″ “$2″ … “$n” 的形式输出所有参数。

$# 添加到Shell的参数个数

$0 Shell本身的文件名

$1~$n 添加到Shell的各参数值。$1是第1参数、$2是第2参数……

 

字符串截取

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

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

1. # 号截取,删除左边字符,保留右边字符。

echo ${var#*//}

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

即删除 http://

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

2. ## 号截取,删除左边字符,保留右边字符。

echo ${var##*/}

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

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

结果是 123.htm

3. %号截取,删除右边字符,保留左边字符

echo ${var%/*}

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

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

4. %% 号截取,删除右边字符,保留左边字符

echo ${var%%/*}

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

结果是:http:

5. 从左边第几个字符开始,及字符的个数

echo ${var:0:5}

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

结果是:http:

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

echo ${var:7}

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

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

7. 从右边第几个字符开始,及字符的个数

echo ${var:0-7:3}

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

结果是:123

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

echo ${var:0-7}

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

结果是:123.htm

注:(左边的第一个字符是用 0 表示,右边的第一个字符用 0-1 表示)

 

原文地址:http://www.lampblog.net/2011/04/shell%E8%84%9A%E6%9C%AC%E5%8F%98%E9%87%8F%E5%92%8C%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%88%AA%E5%8F%96/

分享到:
评论

相关推荐

    shell中字符串截取

    ### Shell中字符串截取 在Shell脚本编程中,对字符串进行截取是常见的操作之一。通过对字符串的处理,可以实现各种数据解析、文件名提取等实用功能...希望本文能够帮助大家更好地理解和掌握Shell中的字符串截取技巧。

    shell编程中的字符串截取方法小结

    一、Gnu Linux shell 截取字符变量的前8位,...二、按指定的字符串截取 1、第一种方法: ${varible##*string} 从左向右截取最后一个string后的字符串 ${varible#*string}从左向右截取第一个string后的字符串 ${varible%

    Shell脚本8种字符串截取方法总结

    在Shell脚本编程中,字符串处理是常见的任务之一,其中包括字符串截取。本文将详细介绍8种在Shell脚本中截取字符串的方法,并提供相应的实例代码和操作结果。 1. **# 号截取**:使用`#`运算符,从字符串的左侧开始...

    Shell字符串截取的详细方法

    一、Linux shell 截取字符变量的前8位...二、按指定的字符串截取1、第一种方法:${varible##*string} 从左向右截取最后一个string后的字符串${varible#*string}从左向右截取第一个string后的字符串${varible%%string*}从

    shell 批量处理 字符串指令行

    通过编写shell脚本,我们可以实现对字符串进行各种操作,自动化执行一系列命令行指令,从而提高工作效率。这篇博客“shell批量处理字符串指令行”可能探讨了如何利用shell的特性来处理字符串,包括查找、替换、截取...

    shell 字符串操作

    子字符串截取** - **${string:position}**: 从指定位置开始截取字符串。 - 示例: ```bash str="Hello World" echo "${str:6}" # 输出: World ``` - **${string:position:length}**: 从指定位置开始截取指定...

    shell中字符串处理方

    ### Shell中的字符串处理方法 #### 引言 在Shell编程中,字符串...无论是简单的字符串截取还是更复杂的文本分析任务,这些技巧都能提供强大的支持。希望本文介绍的内容能帮助你在日常的Shell编程工作中更加得心应手。

    Linux shell脚本的补充

    P13和P14涉及到了变量子串的语法,如如何使用`#`和`%`进行字符串截取和替换。在P18中,展示了如何通过shell脚本自动批量修改文件名,使用for循环和字符串操作配合`mv`命令实现。 P19介绍了shell的扩展变量,它们在...

    Shell脚本专家指南Shell编程基础.pdf

    - 字符串截取:使用 `${var:start:length}`。 9. **数组使用**: - 定义数组:`arr=(element1 element2 ...)`. - 访问数组元素:`${arr[index]}`。 - 遍历数组元素:使用 `for` 循环。 10. **错误处理**: - ...

    Shell脚本-珍藏版

    获取字符串长度、字符串切片、替换字符串、字符串截取以及变量状态赋值是常见的字符串处理方法。此外,还可以使用特定的语法为字符串添加颜色,提高输出信息的可读性。 Shell脚本中表达式和运算符是控制逻辑流的...

    linux shell环境以及shell脚本.docx

    此外,Shell脚本还支持字符串操作,如字符串截取、连接等。同时,我们可以使用`((...))`进行数值计算,比如`(a=$((b+c)))`用于计算`b`和`c`的和并赋值给`a`。`read`命令用于从用户那里读取输入,`-p`选项用于设置...

    shell脚本的编写入门手册

    - **操作字符串**:使用特定的命令和语法对字符串进行操作,如截取、拼接等。 - **参数替换**:通过特定的模式匹配来替换变量中的内容。 - **变量的间接引用**:通过另一个变量来引用变量名。 ##### 4.2 进阶技巧 ...

    shell脚本字符串和数组的使用操作方法

    在Shell脚本编程中,字符串和数组是两种重要的数据类型,它们被广泛应用于处理和组织文本数据。本文将深入探讨如何在Shell脚本中使用这两种数据结构。 首先,让我们来看看字符串。在Shell脚本中,字符串可以用单...

    shell脚本基本语法详解.doc

    例如:str="a b c d e f g h i j",可以使用${str}来输出源字符串,使用${#str}来输出字符串长度,使用${str:5}来截取从第五个后面开始到最后的字符,使用${str:5:2}来截取从第五个后面开始的2个字符等。 三、 ...

    自用shell脚本哒哒

    3. **变量和字符串处理**:在shell脚本中,可以创建和使用变量存储数据。字符串处理包括拼接(使用`+`),截取(使用`cut`命令),替换(使用`sed`命令)等。 4. **条件语句和循环**:`if`、`elif`、`else`用于条件...

    shell字符串截取报错:Bad substitution的解决

    shell进行字符串截取 运行 ${GIT_COMMIT:0:6}报错: /tmp/jenkins7505855461406722507.sh: 4: /tmp/jenkins7505855461406722507.sh: Bad substitution 原因:两种shell语言解释器 bash和dash 查看当前/bin/sh ...

Global site tag (gtag.js) - Google Analytics