Linux:用shell如何实现读取一个字符串的第n个字符呢

Linux:用shell如何实现读取一个字符串的第n个字符呢,第1张

代码如下:

str="/home/gateman"

if [ ${str:0:1} = "/"  ]then

  echo "yes'

fi

${str:0:1} 中0表示从第几个字符开始,1表示截取多长。

Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本,常见的脚本解释器有:

bash:是Linux标准默认的shell。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个。

sh: 由Steve Bourne开发,是Bourne Shell的缩写,sh 是Unix 标准默认的shell。

另外还有:ash、 csh、 ksh等。

扩展资料

Linux shell 截取字符变量的前8位:

实现方法有如下几种:

expr substr “$a” 1 8

echo $a|awk ‘{print substr(,1,8)}’

echo $a|cut -c1-8

echo $

expr $a : ‘\(.\\).*’

echo $a|dd bs=1 count=8 2>/dev/null

按照指定要求分割:

比如获取后缀名

ls -al | cut -d “.” -f2

小结:shell对应字符串的处理方法很多,根据需求灵活选择。

在做shell批处理程序时候,经常会涉及到字符串相关 *** 作。有很多命令语句,如:awk,sed都可以做字符串各种 *** 作。 其实shell内置一系列 *** 作符号,可以达到类似效果,大家知道,使用内部 *** 作符会省略启动外部程序等时间,因此速度会非常的快。

简单介绍下Shell字符串截取的详细方法,如截取指定字数、按指定的字符串截取、按指定要求分割。

一、Linux shell 截取字符变量的前8位,有方法如下:

二、按指定的字符串截取

1、第一种方法:

${varible##*string} 从左向右截取最后一个string后的字符串

${varible#*string}从左向右截取第一个string后的字符串

${varible%%string*}从右向左截取最后一个string后的字符串

${varible%string*}从右向左截取第一个string后的字符串

“*”只是一个通配符可以不要

三、按照指定要求分割:

比如获取后缀名


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8745963.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存