shell脚本如何获取分隔符个数

木木木yanyanyan 发布于 2017/01/25 20:49
阅读 592
收藏 0

如何编写shell脚本获取一下内容

abc$dgd$ddd$dgeg

的字段个数,分割符是$,字段个数应该是4

加载中
0
木木木yanyanyan
木木木yanyanyan
你这个是按照分隔符后,获取倒数第二个字符
0
木木木yanyanyan
木木木yanyanyan
我自己的回答
echo "abc\$dg\$dd" | sed 's/\$/ /g'|wc -w
问题出在$需要转义符,但是事实上,没有转义符,就是$,那怎么办
--------------------------------
后来我试了试,在文档中,是可以识别$符号的
sed 's/\$/ /g' Documents/test |wc -w
成功
0
洛水之崖
洛水之崖

如果只是要识别字符串的话,使用“'”是不会进行转换的

> a="aaa"
> b="$a/bb"
> echo $b

aaa/bb

> c='$a/cc'
> echo $c

$a/cc

我不知道你想进行怎样的操作。

但如果需要对变量进行识别和转换的话,一种常用的策略是先使用其他的标识符来标识,然后进行识别和操作,在需要进行变量打印的时候再通过sed来替换标识符。

返回顶部
顶部