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

标签 string variables ksh var

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

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

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

最佳答案

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

输出
testing
${var%?}是一个参数编辑功能。 '%' 表示从右侧删除并期望遵循模式。在您的示例中,该模式可能只是字符 '1'(不带引号)。我正在使用通配符字符 '?'以便删除任何单个字符。您可以使用“*”字符来指示所有字符,但通常您希望将其与一些前面的字符“捆绑”在一起,例如 echo ${var%i*}只会给你 test其结果。从字符串的左侧开始,此 AND '#' 和 '##' 上还有 '%%' 变体。

我希望这有帮助。

关于string - 如何删除 ksh 中字符串变量的最后一个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9195634/

相关文章:

python类变量按值查找

linux - 使用点空格与点斜线执行文件

c++ - strcmp 不适用于 Qt

c++ - 存储字符串文字数组,以传递给需要字符串文字的模板

c++ - 交换某些字符后生成的给定子字符串的最大数量的字符串?

string - 必须向文本小部件提供非空字符串

java - 何时创建变量(内存管理)

javascript - Selenium IDE gotoif 变量包含字符串?

linux - 如何在查询字符串 KSH Linux 中转义管道 "|"字符?

shell - 将通配符传递给别名