$ {@:-1}如何扩展到最后一个参数

时间:2016-05-28 16:48:14

标签: bash

我知道${para:[start]:[length]}$@符号,但我无法了解${var: -1}如何评估最后一个参数。

2 个答案:

答案 0 :(得分:5)

将其视为length - 1,它将在$var中的最后一个字符中解析。同样适用于${var:(-2)},...:

var='hello'
printf "%s\n" "${var:(-1)}" # o
printf "%s\n" "${var:(-2)}" # lo
printf "%s\n" "${var:(-3)}" # llo

答案 1 :(得分:3)

来自bash(1)手册页:

  

如果参数是@ ...偏移量为                 -1计算到最后一个位置参数。