我正在尝试在 bash 中解析字符串的文本,然后我可以在其中抛出一个案例选择,但我在试图弄清楚如何做到这一点时遇到了最大的麻烦。在 VB 中,我知道它真的很简单
someString = "Hey there"
Select Case Mid(someString,1,5)
Case "Hey t" 'Do something
Case "Go aw" 'Do something else
Case 'Else
'String is unrecognized
End Select
我似乎找不到任何可以显示如何执行与 Mid 函数等效的字符串操作函数的东西。我是否使用sed
,我不相信我可以使用awk
,或者cut
因为我不想根据模式修剪字符串,但肯定它必须在 Unix 中一样简单。
这也可以通过 if、elif 和 else 轻松完成。${someString:0:5} 是参数扩展。从 bash 手册中的部分以及Gregs Bash FAQ #73中了解更多信息。
注意另一个使用 cut 的答案。两者都可以工作,但是参数扩展更快,因为它内置于 bash 并且被认为是更好的代码。cut 非常适合跨多行文本剪切。
我不确定我是否理解您的问题,因为我认为“剪切”会按照您的意愿工作。