脚本 Shell 提取中间的字符串

脚本 Shell 提取中间的字符串
#!/bin/sh
lineversion="/tmp/g-9.n.gggg1000.fr-worker1.V.2.tar.bz2" 

我的问题:我怎样才能提取

 g-9.n.gggg1000.fr

$lineversion 

在另一个变量中?

答案1

基本上,该方法取决于您在字符串出现之前对其格式的了解。

这可能是一种解决方案,但输入的细微变化可能会导致其失败:

lv=${lineversion##*/}; lv=${lv%-*}; echo $lv

另一方面,要注意作业中 = 周围的空格!

相关内容