在bash中提取String的特定单词

时间:2018-03-28 06:31:46

标签: string bash

我需要从bash中的字符串中提取特定单词。

我有一个String" xxx / yyy / zzz / foo.txt"从这个字符串我需要提取" zzz"。

input="xxx/yyy/zzz/foo.txt"

((length = ${#input} - 8))
subString= {$file:0:$length}
name= $subString | rev | cut -d "/" -f1 | rev
echo $name

在这里,我得到了一个错误,如" xxx / yyy / zzz / foo.txt":0:52}:没有这样的文件或目录" at line:subString = {$ file:0:$ length}

有人对此有所帮助吗?

1 个答案:

答案 0 :(得分:2)

如果您正在处理文件名,可以使用basenamedirname命令:

$ input="xxx/yyy/zzz/foo.txt"; echo $(basename $(dirname $input))
zzz