Это я сражен:
function x
{
echo "/${1:0:1}/${1:1:1}/${1:2:1}/${1:3:1}/${1:4:1}/${1:5:1}/"
}
$ x 123456
в ЗШ принтами:
/1/1/2/3/4/5/
в Баш печатает:
/1/2/3/4/5/6/
Все, что я прочитал говорит, что ЗШ использует смещение нулевой точки, как Баш, так как на земле может ${1:0:1}
= ${1:1:1}
?
Помилование Джентльмены, ошибка синтаксиса. Тот факт, что вышеупомянутый «вид работы» заставлял меня думать, что проблема не была синтаксисом как таковым. Кажется, что zsh и bash более разные, чем я ожидал. И теперь я вижу, что я не могу использовать: $ 1 [0,1] I hafta: var = $ 1; $ Var [0,1]; чтобы заставить его работать :( –
... и я нахожу, что: $ var [0,0] не существует, поэтому кажется, что смещения основаны на одном, а не на нулевом уровне. –