+ -
当前位置:首页 → 问答吧 → 如何用shell将一个cell名: INV12D 只取数字前面的 INV ,急啊,在线等

如何用shell将一个cell名: INV12D 只取数字前面的 INV ,急啊,在线等

时间:2011-04-20

来源:互联网

一个cell的名字是: INV12D
要求用shell取出cell名遇到第一个数字的前一部分,也就是:INV 
不知道怎么弄?而且这样的cell名超多,都是cell名中带有数字的,
要求取出第一个数字的前一部分,请大侠们帮帮忙!

作者: korli319   发布时间: 2011-04-20


cell="INV12D"

cell2=${cell%%[0-9]*}

cell2就是你要的结果

作者: steptodream   发布时间: 2011-04-20

兄弟,能对 cell2=${cell%%[0-9]*} 中的两个百分号解释下吗?偶是新手,学的是bash,谢谢了!

作者: korli319   发布时间: 2011-04-20

引用 2 楼 korli319 的回复:

兄弟,能对 cell2=${cell%%[0-9]*} 中的两个百分号解释下吗?偶是新手,学的是bash,谢谢了!

 刚才你的那个帖子里我已经解释了 你去看看 就知道1个%号和2个%号的时候 语句的含义
这就是shell的语法和特点 你让我怎么具体解释呀

作者: steptodream   发布时间: 2011-04-20

比如在shell脚本里 $$它就表示当前脚本的进程号 这就是shell里规定的 没办法解释为什么$$表示进程号码

作者: steptodream   发布时间: 2011-04-20