如何删除ksh中字符串变量的最后一个字符?

时间:2012-02-08 14:51:30

标签: string variables ksh var

我有一个字符串变量,我想删除它的最后一个字符。

例如:从“testing1”传递到“testing”。

我怎样才能在KSH中做到这一点?

1 个答案:

答案 0 :(得分:13)

var="testing1"
print ${var%?}

<强>输出

testing

${var%?}是参数编辑功能。 '%'表示从右侧移除并期望跟随模式。模式可能在您的示例情况下只是char'1'(没有引号)。我正在使用外卡char'?'这样就可以删除任何单个字符。您可以使用'*'字符来表示所有字符,但通常您希望将其与某些前面的字符“捆绑”,因此您的示例echo ${var%i*}会为您提供test。此AND'#'和'##'上还有'%%'变体,从字符串的左侧开始。

我希望这会有所帮助。