Применение строковых операторов bash к константной строке

Я пытаюсь использовать строковые операторы bash для постоянной строки. Например, вы можете сделать следующее с переменной $ foo:

$ foo=a:b:c; echo ${foo##*:}
c

Теперь, если строка «a: b: c» является постоянной, я хотел бы иметь более краткое решение, например:

echo ${"a:b:c"##*:}

Однако это не допустимый синтаксис bash. Есть ли способ сделать это?

[Причина, по которой мне нужно это сделать (а не жестко кодировать результат подстановки, например "c" здесь), заключается в том, что у меня есть шаблон команды, в котором заполнитель "% h" заменяется чем-то перед запуском команды ; результат замены рассматривается bash как константа.]

5
задан a3nm 3 February 2012 в 14:04
поделиться