Для строки, такой как "c-zyte5:p-6db39", как я могу проанализировать ее, чтобы получить заданное c подмножество, такое как p-6db39 - отключение как первых 9 символов, так и последних?
"c-zyte5:p-6db39"
p-6db39
Вместо индексирования подстроки можно также использовать расширение параметра с удалением подстроки, чтобы удалить все символы слева вверх, начиная с первого ':', например
':'
v="c-zyte5:p-6db39" echo "${v##*:}"
Результат
Вы можете написать:
foo='"c-zyte5:p-6db39"' echo "${foo:9:-1}" # prints p-6db39
(см. Справочное руководство Bash , §3.3.3 «Расширение параметров оболочки» .)