将数字的最后一位数设置为shell脚本中的变量

时间:2014-07-29 23:16:12

标签: bash shell variables pipe

我有一个号码2014061200,我正在尝试提取此号码的一位数(0)并将其设置为变量$STR,以便$STR将等于0,因为它位于上述数字的位置。

我制作了一个shell脚本,显示以下内容:

$NUM=2014061200
$STR= $NUM | tail -c 2
echo $STR

然而,当我这样做时,我得到$STR的空白而不是预期的结果0.我的意思是当我输入

echo $NUM | tail -c 2,我的输出为0,但如何将其输入变量?

由于

2 个答案:

答案 0 :(得分:4)

使用参数扩展:

num=2014061200
last=${num: -1}

-1告诉bash从右边提取一个字符。

答案 1 :(得分:1)

这是使用参数扩展的另一个变体,其中${#num}-1是字符串的长度减1并且${num:position:length}是子字符串表达式:

${num:(${#num}-1):1}